ขั้นตอนการทำงานและรหัสจำลอง

ขั้นตอนการทำงานและรหัสจำลอง

 การพัฒนาโปรแกรมภาษา C มีขั้นตอนดังนี้

1) เขียนโปรแกรมต้นฉบับ (source program) ด้วยภาษา C
ใช้โปรแกรม Turbo C/ C++ เพื่อเขียนโปรแกรมต้นฉบับด้วยภาษา C จากนั้นบันทึกโปรแกรมพร้อมกับตั้งชื่อแฟ้มไว้ แฟ้มที่ได้จะมีนามสกุล *.c หรือ *.cpp เช่น simple.c หรือ simple.cpp เป็นต้น นอกจากนี้ยังสามารถใช้โปรแกรม Turbo C/C++ เขียนโปรแกรมภาษา C++ ได้อีกด้วย
2) แปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง (object program)ใช้คำสั่ง compile เพื่อแปลโปรแกรมภาษา C ไปเป็นโปรแกรมภาษาเครื่อง แฟ้มที่ได้จะมีนามสกุล *.obj ซึ่งในขั้นตอนนี้โปรแกรมต้นฉบับอาจเกิดความผิดพลาดทางไวยกรณ์ภาษา (syntax error) ขึ้นได้ จึงต้องย้อนกลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. ให้ถูกต้องเสียก่อ3) เชื่อมโยง (link) โปรแกรมภาษาเครื่องเข้ากับ library function ของภาษา C จะได้เป็น execute program โดยใช้คำสั่ง link แฟ้มที่ได้จะมีนามสกุล *.exe
4) สั่งให้ execute program แสดงผลลัพธ์ออกมา โดยใช้คำสั่ง runในขั้นตอนนี้ผู้เขียนโปรแกรม ควรตรวจสอบผลลัพธ์ที่ได้จากโปรแกรมว่าตรงกับความต้องการของเราหรือไม่ ถ้าผลลัพธ์ที่ได้ไม่ตรงกับความต้องการให้กลับไปแก้ไขโปรแกรมต้นฉบับในข้อ 1. เสร็จแล้วทำขั้นตอน ข้อ 2. ถึง ข้อ 4. ซ้ำอีก ทำซ้ำเช่นนี้จนกว่าจะได้ผลลัพธ์ที่ต้องการ

            หมายเหตุ ในทางปฏิบัติ การ compile/ link/ run ในโปรแกรม Turbo C/C++ สามารถทำให้พร้อมกันทั้ง 3 ขั้นตอน คือใช้คำสั่ง Ctrl + F9 (กดปุ่ม Ctrl และปุ่ม F9 พร้อมกัน)

โดยสรุปเราสามารถเขียนผังงานแสดงขั้นตอนการพัฒนาโปรแกรมภาษา C ได้ดังนี้

การเขียน Pseudocode

ซูโดโค้ด (Pseudocode) หรือ ในภาษาไทย เรียกว่า รหัสจำลอง หรือ รหัสเทียม
คือ การจำลองการเขียนโปรแกรม โดยเขียนคำสั่งเป็นภาษาอะไรก็ได้ เช่น ไทย หรือ อังกฤษ ฯลฯ ที่ไม่ใช่ภาษาคอมพิวเตอร์ขั้นสูงอย่าง ภาษา C หรือ Java ซูโดโค้ดนี้จะไม่ขึ้นกับภาษาคอมพิวเตอร์ใดๆ โดยเฉพาะ ใช้อธิบายการทำงานของโปรแกรม เนื่องจากสื่อด้วยภาษาง่ายๆ อย่าง ไทย, อังกฤษ ทำให้ผู้อ่านเข้าใจได้ง่าย และตรงกัน โดยปกติแล้วมักใช้ภาษาอังกฤษ เนื่องจากสามารถแปลเป็นภาษาคอมพิวเตอร์ได้ง่าย

หลักในการเขียน Pseudocode

1. คำสั่งที่เขียนใช้ภาษาที่เข้าใจง่าย ไม่ต้องคำนึงถึงภาษาคอมพิวเตอร์
2. ในหนึ่งบรรทัด ให้มีเพียงหนึ่งคำสั่งเท่านั้น
3. ใช้ย่อหน้าในการแสดงกลุ่มของคำสั่ง ที่เป็นคำสั่งย่อยในคำสั่งพวกเงื่อนไข เช่น if-else, while, for ฯลฯ
4. ในการเขียนแต่ละคำสั่งให้เรียงการทำงานจากบนลงล่าง และมีทางออกหรือจุดสิ้นสุดเพียงจุดเดียว
5. กลุ่มคำสั่งอาจจะเขียนรวมกันเป็นโมดุล และเวลาเรียกใช้ก็เรียกใช้ผ่านชื่อโมดุล (คล้ายกับการเรียกใช้ฟังก์ชัน)

ตัวอย่างที่ 1 จงเขียน Pseudocode จากโปรแกรมหาผลรวมของตัวเลข 2 ค่า แล้วแสดงผลรวมออกมาทางหน้าจอ
1. read x , y
2. calculate sum = x + y
3. print sum

ตัวอย่างที่ 2 จงเขียน Pseudocode จากโปรแกรมรับตัวเลข 1 ค่าแล้วตรวจสอบว่าเป็นเลขคู่หรือเลขคี่
1. read x
2. if x % 2 = 0 <– ตรวจสอบว่าเศษจากการหาร x ด้วย 2 เท่ากับ 0 หรือไม่
1. then
1. print “even”
2. else
1. print “odd”

ตัวอย่างที่ 3 จงเขียน Pseudocode จากโปรแกรมหาค่าเฉลี่ยของตัวเลข 10 ค่า แล้วแสดงค่าเฉลี่ยออกมาทางหน้าจอ
1. for i = 1 to 10 <– เป็นคำสั่งวนรอบจำนวน 10 รอบ
1. read num
2. calculate sum = sum + num
2. calculate mean = sum / 10
3. print mean

ตัวอย่างที่ 4 จงเขียน Pseudocode จากโปรแกรมหาค่าเฉลี่ยของตัวเลข n ค่า แล้วแสดงค่าเฉลี่ยออกมาทางหน้าจอ
1. read n
2. for i = 1 to n <– เป็นคำสั่งวนรอบจำนวน n รอบ
1. read num
2. calculate sum = sum + num
3. calculate mean = sum / n
4. print mean

ตัวอย่างที่ 5 จงเขียน Pseudocode จากโปรแกรมเปรียบเทียบตัวเลข 2 ค่า แล้วแสดงความสัมพันธ์ออกมา
1. read x , y
2. if x > y
1. then
1. print “x > y”
2. else if x < y
1. then
1. print “x < y”
2. else
1. print “x = y”

การเขียนรหัสเทียมหรือรหัสจำลอง (pseudo code) เป็นอีกเครื่องมือหนึ่งที่ใช้สำหรับการออกแบบขั้นตอนการทำงานของโปรแกรม ซึ่งหมายถึงการเขียนคำสั่งหรือชุดคำสั่งที่มีลักษณะเป็นภาษาอังกฤษธรรมดาส่วนหนึ่งและภาษาโปรแกรมอีกส่วนหนึ่ง นักเขียนโปรแกรมและผู้ใช้จำนวนมากมักพบว่าการเขียนรหัสจำลองเข้าใจง่ายกว่าการเขียนผังงาน โดยเฉพาะอย่างยิ่งเมื่อจะออกแบบส่วนของการประมวลผลหรือการดำเนินการ
การลงรหัสโปรแกรม (Program coding)                        
                  การลงรหัสโปรแกรม เป็นการนำขั้นตอนการออกแบบขั้นตอนการทำงานของโปรแกรม มาเปลี่ยนเป็นโปรแกรมภาษาคอมพิวเตอร์ภาษาใดภาษาหนึ่ง ซึ่งต้องคำนึงถึงความรู้ความสามารถความถนัดและความชำนาญของผู้เขียนโปรแกรมเป็นสำคัญ
รูปแบบคำสั่งและกฎเกณฑ์ของภาษาที่ใช้เพื่อให้การประมวลผลเป็นไปตามผลลัพธ์ที่ต้องการ ดังตัวอย่างการลงรหัสโปรแกรม
ต่อไปนี้

    งานที่1: จงเขียนโปรแกรม เพื่อคำนวณหาส่วนลดของราคาสินค้าให้กับลูกค้า10 %
      ลงรหัสโปรแกรมนี้:
 Program DiscountPRO;
      Uses wincrt;
      Var
              No,Code:string;
              Price, Discount : Real;
      Begin
      clrscr;                                                           
      Write(‘Enter Data No: ‘);
      Readlyn(No);
      Write(‘Enter Data Code: ‘);
      Readln(Code );
      Write(‘Enter Data Price ‘);
      Readln(Price );
      Discount :=Price*(10/100);
      Writeln(‘*************************’);
      Writeln(‘No’:8,’Code’:10,’Price’:8,’Discount’:13);
      Writeln(No:8, Code:10,Price:8:2, Discount:13:2) ;
      Readln;
      งานที่2 : จงเขียนโปรแกรมคำนวณหาส่วนลดของราคาสินค้าและราคาที่ต้องจ่ายจริงโดยมีเงื่อนไขดังนี้
            -ถ้าซื้อสินค้ามากกว่าหรือเท่ากับ 1000 บาท คิดส่วนลด 10 เปอร์เซ็นต์
            -ถ้าซื้อสินค้าน้อยกว่า 1000 บาท คิดส่วนลด 5 เปอร์เซ็นต์

  การลงรหัสโปรแกรม :
  Program DiscountPRO;
      Uses wincrt;
      Var
            No,Code:string;
            Price, Discount : Real;
      Begin
      clrscr;
      Write(‘Enter Data No: ‘);
      Readln(No);
      Write(‘Enter Data Code: ‘);
      Readln(Code );
      Write(‘Enter Data Price ‘);
      Readln(Price );
      if Price>=1000 then  Discount :=Price*(10/100);
      Discount :=Price*(5/100);
      Writeln(‘*************************’);
      Writeln(‘No’:8,’Code’:10,’Price’:8,’Discount’:13);
      Writeln(No:8, Code:10,Price:8:2, Discount:13:2) ;
      Readln;
      End.

อ้างอิง

http://nipapon.wordpress.com/2012/08/24/%E0%B8%82%E0%B8%B1%E0%B9%89%E0%B8%99%E0%B8%95%E0%B8%AD%E0%B8%99%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%97%E0%B8%B3%E0%B8%87%E0%B8%B2%E0%B8%99%E0%B9%81%E0%B8%A5%E0%B8%B0%E0%B8%8B%E0%B8%B9%E0%B9%82%E0%B8%94/

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s