งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

Repetitive Statements (Looping)

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "Repetitive Statements (Looping)"— ใบสำเนางานนำเสนอ:

1 Repetitive Statements (Looping)
1. คำสั่ง FOR 2. คำสั่ง WHILE 3. คำสั่ง REPEAT

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

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

5 ตัวอย่าง PROGRAM Demo_ASCII_by_FOR_Statement; USES CRT;
VAR count : INTEGER; BEGIN FOR count := 32 to 255 DO 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 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 คำสั่ง WHILE แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้
Syntax : Expression WHILE Statement(s) DO คำสั่ง WHILE แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้ No Is condition true ? Yes Statement(s)

10 ตัวอย่าง PROGRAM Demo_looping_by_WHILE_Statement; USES CRT;
VAR count : INTEGER; BEGIN count := 32; WHILE count < DO 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; WHILE count <= DO total := total + count; count := count + 1; END; WRITELN('Total = ', total ); END.

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

13 คำสั่ง REPEAT แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้
Syntax : Expression REPEAT Statement UNTIL ; คำสั่ง REPEAT แสดงใน รูปผังงาน (Flowchart) ได้ดังนี้ 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; UNTIL count > 255; END.

15 ตัวอย่าง จงเขียนโปรแกรม เพื่อหาผลรวมของเลข 10 จำนวน
ตัวอย่าง จงเขียนโปรแกรม เพื่อหาผลรวมของเลข 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; UNTIL count > 10; WRITELN('Total = ', total); END.

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


ดาวน์โหลด ppt Repetitive Statements (Looping)

งานนำเสนอที่คล้ายกัน


Ads by Google