เนื้อหา ประเภทของโปรแกรมภาษา ขั้นตอนการพัฒนาโปรแกรม กำหนดและวิเคราะห์ปัญหา การเขียนผังงาน (Flowchart)
1.1 ประเภทโปรแกรมภาษา ประเภทของโปรแกรมภาษา 1. ภาษาระดับต่ำ (Low-Level Language) เช่น ภาษาเครื่อง (Machine language) ภาษาแอสเซมบลี (Assembly Language) 2. ภาษาระดับกลาง (Middle-Level Language) เช่น ภาษาฟอร์ท ภาษา C 3. ภาษาระดับสูง (High-Level Language) เช่น Basic, Pascal, Fortran, JAVA, Cobol
1.1.3 ภาษาระดับสูง ภาษาระดับสูง (High-Level Languages) ใช้ภาษาที่มนุษย์เข้าใจ (English-like language) เช่น Basic, Pascal, Fortran, JAVA, ... ใช้ คอมไพเลอร์ (Compiler) หรือ Interpreter ในการแปลภาษาระดับสูงให้เป็นภาษาเครื่อง Compiler แปลทั้งโปรแกรม (เช่น Pascal, C, ...) Interpreter แปลทีละบรรทัด (เช่น Basic, ...)
1.2 การพัฒนาโปรแกรม 5 ขั้นตอนในการพัฒนาโปรแกรม 1. กำหนดและวิเคราะห์ปัญหา (State problem & Problem analysis) 2. เขียนผังงาน (Flowchart) 3. เขียนโปรแกรม (Programming) 4. ทดสอบและแก้ไขโปรแกรม (Testing & debugging) 5. ทำเอกสารและบำรุงรักษาโปรแกรม (Document & maintenance)
1.3 กำหนด&วิเคราะห์ปัญหา กำหนดขอบเขตของปัญหา (State problem) ให้ชัดเจนว่า จะให้คอมพิวเตอร์ทำอะไร (What?) วิเคราะห์ปัญหา (Problem analysis) Input: กำหนดลักษณะข้อมูลเข้า Process: กำหนดวิธีการประมวลผล (How?) Output: กำหนดลักษณะข้อมูลออก
ตัวอย่างที่ 1 ออกแบบโปรแกรมให้คอมพิวเตอร์ทำงานเป็น เครื่องคิดเลขอย่างง่าย โดยรับข้อมูล 2 ค่า (X, Y) และแสดงผลบวกทางจอภาพ Problem: คำนวณผลบวกของ 2 ค่า Problem Analysis 1. Input: รับข้อมูล (X, Y) จากคีย์บอร์ด 2. Process: คำนวณ sum = X + Y 3. Output: แสดงผลบวก (sum) ทางจอภาพ
1.4 การเขียนผังงาน ผังงาน (Flowchart) เป็นแผนภาพที่ใช้อธิบาย การทำงานของโปรแกรมอย่างเป็นขั้นตอน ประโยชน์ของ Flowchart 1. อธิบายลำดับขั้นตอนการทำงานของโปรแกรม 2. ทำให้ตรวจสอบข้อผิดพลาดของโปรแกรมได้ง่าย 3. ทำให้ผู้อื่นสามารถศึกษาการทำงานและแก้ไข โปรแกรมได้ง่าย
1.4.1 ประเภทของผังงาน ผังงานระบบ (System Flowchart) แสดงขั้นตอนการทำงานภายในระบบงาน โดยจะกล่าวอย่างกว้างๆ ผังงานโปรแกรม (Program Flowchart) แสดงขั้นตอนของคำสั่งที่ใช้ในโปรแกรม
1.4.2 สัญลักษณ์ในผังงาน การเริ่มต้น และการสิ้นสุดการทำงาน ลูกศรแสดงทิศทางการทำงาน และการไหลของข้อมูล การประมวลผล หรือการคำนวณ การรับข้อมูล หรือแสดงผล (ไม่ระบุชนิดอุปกรณ์) การแสดงผลทางเครื่องพิมพ์ การตรวจสอบเงื่อนไข จุดเชื่อมต่อของผังงาน
1.4.3 รูปแบบของผังงาน แบบลำดับ (Sequence) แบบมีทางเลือก (Selection) การเลือกทำแบบ 1 เส้นทาง การเลือกทำแบบ 2 เส้นทาง การเลือกทำแบบหลายเส้นทาง แบบทำซ้ำ (Looping)
1.4.3.1 แบบลำดับ Flowchart แบบลำดับ (Sequence) start Input แสดงขั้นตอนการทำงานที่เรียงลำดับ ไม่มีการข้ามขั้น หรือย้อนกลับ statement output end
1.4.3.2 แบบมีทางเลือก จะทำงานเฉพาะเมื่อเงื่อนไขเป็นจริงเท่านั้น แสดงการตรวจสอบเงื่อนไขให้โปรแกรมเลือกทำอย่างใดอย่างหนึ่ง ซึ่งมี 3 กรณี 1. การเลือกแบบ 1 เส้นทาง check condition จะทำงานเฉพาะเมื่อเงื่อนไขเป็นจริงเท่านั้น no statement(s) yes
1.4.3.2 แบบมีทางเลือก 2. การเลือกแบบ 2 เส้นทาง check condition no yes statement 1 statement 2 เมื่อเงื่อนไขเป็นจริงจะทำอย่างหนึ่ง เมื่อเงื่อนไขเป็นเท็จจะทำอีกอย่างหนึ่ง
1.4.3.2 แบบมีทางเลือก 3. การเลือกแบบหลายเส้นทาง (n) check condition n 1 2 3 . . . statement1 statement2 statement3 statement n เมื่อเงื่อนไขเท่ากับทางเลือกใดจะทำตามทางนั้น
1.4.3.3 แบบทำซ้ำ ตรวจสอบเงื่อนไขก่อน จะทำงานซ้ำเมื่อเงื่อนไขเป็นจริง แสดงการทำซ้ำซึ่งมี 3 กรณี 1. การทำซ้ำแบบเงื่อนไขเป็นจริง statement(s) check condition yes ตรวจสอบเงื่อนไขก่อน จะทำงานซ้ำเมื่อเงื่อนไขเป็นจริง no exit loop (ออกจากทำงานซ้ำเมื่อเงื่อนไขเป็นเท็จ)
1.4.3.3 แบบทำซ้ำ 2. การทำซ้ำแบบจนเงื่อนไขเป็นจริง statement(s) check condition no ทำงานก่อนการตรวจเงื่อนไข ทำงานซ้ำจนเงื่อนไขเป็นจริง(จึงออกจากทำงานซ้ำ) exit loop yes
1.4.3.3 แบบทำซ้ำ 3. การทำซ้ำตามจำนวนที่ระบุ ทำงานตามรอบที่กำหนด statement(s) i N for i=1 to N โดยเริ่มจากรอบเริ่มต้น (i=1) ไปยังรอบสุดท้าย (i=N) i > N exit loop (ปกติการนับรอบจะเพิ่มที่ละ 1 ค่า (i = i+1))
1.4.4 ตัวอย่างผังงาน ตัวอย่างที่ 1: ออกแบบ Flowchart ให้คอมพิวเตอร์ ทำงานเป็นเครื่องคิดเลขอย่างง่าย โดยรับข้อมูล 2 ค่า (X, Y) และแสดงผลบวกทางจอภาพ start Read X,Y sum = X+Y sum end
1.4.4 ตัวอย่างผังงาน ตัวอย่างที่ 2: ออกแบบ Flowchart ให้คอมพิวเตอร์รับ ข้อมูล 3 ค่า (X1, X2, X3) คำนวณค่าเฉลี่ย และแสดง ค่าเฉลี่ย ทางจอภาพ start Read X1,X2,X3 sum=X1+X2+X3 mean = sum/3 mean end
1.4.4 ตัวอย่างผังงาน ตัวอย่างที่ 3: ออกแบบ Flowchart ให้ คอมพิวเตอร์รับข้อมูล N ค่า X (X1, X2, ..., XN) คำนวณ ค่าเฉลี่ย (iN Xi/N) และแสดงค่าเฉลี่ย ทางจอภาพ start sum = 0 Read N for i=1 to N mean = sum/N i > N Read X i N mean sum=sum+X end
1.4.4 ตัวอย่างผังงาน ตัวอย่างที่ 4: ออกแบบ Flowchart ในการบวก 1+2+...+100 กำหนดให้ I = 1, 2, 3, ..., 100 และ SUM = 1+2+3+...+100 start I = 1 SUM = 0 SUM = SUM+I I = I+1 yes while I<=100 no SUM end
1.4.4 ตัวอย่างผังงาน ตัวอย่างที่ 5: ออกแบบ Flowchart ให้คอมพิวเตอร์ รับคะแนนนักศึกษา (X) แล้วนำมาจัดกลุ่มตามเงื่อนไข และแสดงผลทางจอภาพ start Read X เงื่อนไข คะแนน 80-100 กลุ่ม G คะแนน 50-79 กลุ่ม P คะแนนต่ำกว่า 50 กลุ่ม F X > 79 yes grade = ‘G’ X > 49 yes grade = ‘P’ grade = ‘F’ grade end
1.4.4 ตัวอย่างผังงาน เงื่อนไข start Read X ตัวอย่างที่ 6: ออกแบบ Flowchart ให้คอมพิวเตอร์รับคะแนนนักศึกษา (X) แล้วนำมาตัดเกรดตามเงื่อนไขและ แสดงผลทางจอภาพ X > 79 yes grade = ‘A’ X > 69 yes grade = ‘B’ X > 59 yes grade = ‘C’ เงื่อนไข คะแนน 80-100 เกรด A คะแนน 70-79 เกรด B คะแนน 60-69 เกรด C คะแนน 50-59 เกรด D คะแนนต่ำกว่า 50 เกรด F X > 49 yes grade = ‘D’ grade = ‘F’ grade end
การใช้ IF รูปแบบคำสั่ง IF เงื่อนไข[ทำเมื่อเงื่อนไขเป็นจริง] หรือ IF เงื่อนไข [ คำสั่งทำเมื่อเงื่อนไขจริง ] ทำต่อไป.......
การใช้ IF ตัวอย่างการใช้งาน To Test :A IF :A>10[STOP] PRINT :A TEST :A+1 END
การใช้ IFELSE รูปแบบคำสั่ง IFELSE เงื่อนไข[ทำเมื่อเงื่อนไขจริง] [ทำเมื่อเงื่อนไขเท็จ] หรือ IFELSE เงื่อนไข [ คำสั่ง1ทำเมื่อเงื่อนไขจริง คำสั่ง2ทำเมื่อเงื่อนไขจริง ] คำสั่ง1ทำเมื่อเงื่อนไขเท็จ คำสั่ง2ทำเมื่อเงื่อนไขเท็จ คำสั่งต่อไป