1 / 16

Repetitive Statements (Looping)

Repetitive Statements (Looping). เป็นคำสั่งที่สั่งให้ทำงานซ้ำ (loop)ในขอบข่ายที่กำหนด จนกระทั่งได้เงื่อนไขที่ต้องการ ซึ่งมีอยู่ด้วยกัน 3 คำสั่งดังนี้ :- 1. คำสั่ง FOR 2. คำสั่ง WHILE 3. คำสั่ง REPEAT.

Download Presentation

Repetitive Statements (Looping)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Repetitive Statements (Looping) • เป็นคำสั่งที่สั่งให้ทำงานซ้ำ (loop)ในขอบข่ายที่กำหนด จนกระทั่งได้เงื่อนไขที่ต้องการ ซึ่งมีอยู่ด้วยกัน 3 คำสั่งดังนี้ :- • 1. คำสั่ง FOR • 2. คำสั่ง WHILE • 3. คำสั่ง REPEAT

  2. 1. คำสั่งFORเป็นคำสั่งให้ทำซ้ำหรือวนรอบ เมื่อเงื่อนไขสอดคล้องหรือ เงื่อนไขเป็นจริง จะทำงานในขอบข่าย ( คำสั่ง หรือกลุ่มของคำสั่ง ) ที่กำหนดไว้ และจะเลิกกระทำซ้ำหรือวนรอบ เมื่อเงื่อนไขไม่สอดคล้องหรือ เงื่อนไขเป็นเท็จ

  3. Syntax : Control Var Expression1 FOR := TO DOWN TO Expression2 DO Statements Expression1 = Initial Value Expression2 = Final Value เช่น ต้องการให้ทำซ้ำจำนวน 20 ครั้ง FOR i := 1 TO 20 DO หรือ FOR j := 20 DOWN TO 1 DO

  4. คำสั่ง FORแสดงใน รูปผังงาน (Flowchart) ได้ดังนี้ No No i <= 20 i >= 1 Yes Yes Statements Statements Increase i by 1 Decrease i by 1 FOR j := 20 DOWN TO 1 DO FOR i := 1 TO 20 DO

  5. ตัวอย่าง • PROGRAM Demo_ASCII_by_FOR_Statement; • USES CRT; • VAR count : INTEGER; • BEGIN • FOR count := 32 to 255 DO • BEGIN • WRITE(’ ', count:3); • WRITE(' ', CHR(count)); • END; • END.

  6. ตัวอย่าง โปรแกรมเพื่อหาผลรวมของเลข 10 จำนวน • PROGRAM Sum; • USES CRT; • VAR count : INTEGER; • num, total : REAL; • BEGIN • total := 0; • FOR count := 1 TO 10 DO • BEGIN • READLN(num); • total := total + num ; • END; • WRITELN('Total = ', total); • END.

  7. ตัวอย่าง เขียนโปรแกรมเพื่อหาค่าผลรวมและค่าเฉลี่ยของคะแนนสอบของนัก ศึกษา 20 คนโดยอ่านคะแนนจากคีย์บอร์ด • PROGRAM Compute_Mean_by_FOR_Statement; • USES CRT; • VAR count,amount : INTEGER; • total, mean, num : REAL; • BEGIN • total := 0; • WRITE('How many data to be input :- '); • READLN(amount); • FOR count := 1 to amount DO • BEGIN • WRITE('DATA(',count,')='); • WRITE(LST,'DATA(',count,')='); • READLN(num); • WRITE(LST,num:4:2); • total := total + num; • END; • WRITELN; • WRITELN(LST); • mean := total / amount; • WRITELN('Total =',total); • WRITELN(LST,'Total =',total); • WRITELN('Mean =', mean); • WRITELN(LST,'Mean =', mean); • END.

  8. 2. คำสั่ง WHILE คำสั่ง while เป็นคำสั่งให้ทำซ้ำหรือวนรอบ เมื่อ เงื่อนไขสอดคล้องหรือ เงื่อนไขเป็นจริง จะทำงานในขอบข่าย( คำสั่ง หรือกลุ่มของคำสั่ง )ที่กำหนด และจะเลิกทำงานในขอบข่าย เมื่อเงื่อนไขไม่สอดคล้องหรือ เงื่อนไขเป็นเท็จ

  9. Syntax : คำสั่ง WHILE แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้ Expression WHILE Statement(s) DO No Is condition true ? Yes Statement(s)

  10. ตัวอย่าง • PROGRAM Demo_looping_by_WHILE_Statement; • USES CRT; • VAR count : INTEGER; • BEGIN • count := 32; • WHILEcount < 255DO • BEGIN • WRITE(count:3, ' ',CHR(count),' '); • count := count + 1; • END; • END.

  11. ตัวอย่าง • PROGRAM Sum; • USES CRT; • VAR total : REAL; • count : INTEGER; • BEGIN • total := 0; • count := 1; • WHILEcount <= 10DO • BEGIN • total := total + count; • count := count + 1; • END; • WRITELN('Total = ', total ); • END.

  12. 3. คำสั่ง REPEAT เป็นคำสั่งให้ทำซ้ำหรือวนรอบ เมื่อ เงื่อนไขไม่สอดคล้องหรือเงื่อนไขเป็นเท็จ จะทำงานในขอบข่าย( คำสั่ง หรือกลุ่มของคำสั่ง )ที่กำหนด และจะเลิกทำงานในขอบข่าย เมื่อเงื่อนไขสอดคล้องหรือ เงื่อนไขเป็นจริง คำสั่ง REPEAT แตกต่างจากคำสั่ง WHILE ตรงที่ คำสั่ง REPEAT ต้องทำก่อนอย่างน้อยหนึ่งรอบแล้ว จึงมาทำการตรวจสอบเงื่อนไขทีหลัง

  13. Syntax : Expression คำสั่ง REPEAT แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้ REPEAT Statement UNTIL ; Statement(s) No Is condition true ? Yes

  14. ตัวอย่าง • PROGRAM Demo_Looping_by_REEPEAT_Statement; • USES CRT; • VAR count : INTEGER; • BEGIN • count := 32; • REPEAT • WRITE(' ',count :3); • WRITE(' ',CHR(count)); • count := count + 1; • UNTILcount > 255; • END.

  15. ตัวอย่าง จงเขียนโปรแกรม เพื่อหาผลรวมของเลข 10 จำนวน • PROGRAM Sum; • USES CRT; • VAR count : INTEGER; • total, num : REAL; • BEGIN • total := 0; • count := 0; • REPEAT • READLN(num); • total := total + num; • count := count + 1; • UNTILcount > 10; • WRITELN('Total = ', total); • END.

  16. การบ้านจงเขียนโปรแกรมโดยใช้คำสั่ง Forคำสั่งWhileและคำสั่ง Repeat ในโจทย์การบ้านข้อที่ 3, 4 และข้อที่ 5 ในกรณีที่มีจำนวนรายการหรือจำนวนครั้งที่วนซ้ำเท่ากับ N • หมายเหตุN เป็นเลขจำนวนเต็มใด ๆ

More Related