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

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

Pisit Nakjai การทำซ้ำ. สาเหตุที่ต้องมีการทำซ้ำ เหตุการณ์ที่เกิดขึ้นหลายรอบ เช่น โปรแกรมแสดง ชื่อ 20 ครั้ง เหตุการณ์ที่เกิดขึ้นหลายรอบ โดยมีการ เปลี่ยนแปลงค่า.

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


งานนำเสนอเรื่อง: "Pisit Nakjai การทำซ้ำ. สาเหตุที่ต้องมีการทำซ้ำ เหตุการณ์ที่เกิดขึ้นหลายรอบ เช่น โปรแกรมแสดง ชื่อ 20 ครั้ง เหตุการณ์ที่เกิดขึ้นหลายรอบ โดยมีการ เปลี่ยนแปลงค่า."— ใบสำเนางานนำเสนอ:

1 Pisit Nakjai การทำซ้ำ

2 สาเหตุที่ต้องมีการทำซ้ำ เหตุการณ์ที่เกิดขึ้นหลายรอบ เช่น โปรแกรมแสดง ชื่อ 20 ครั้ง เหตุการณ์ที่เกิดขึ้นหลายรอบ โดยมีการ เปลี่ยนแปลงค่า หรือมีเงื่อนไข เช่น แสดงผลเลข 0, 1, 2, …, 10 แสดงผลรวมของ 1,3,5,7, …, 99 แสดง ชื่อ ไปเรื่อย ๆ จนกว่าค่า X จะ มากกว่า 30

3 ทดลองเขียนโปรแกรม จงเขียนผังงานและโปรแกรมเพื่อแสดงตัวเลข ออกทางหน้าจอ Output Analysis แสดงผลเลข 0, 1, 2, …, 10 Input Analysis ไม่มี Process Analysis โปรแกรมแสดงผลเลข 0, 1, 2, …,10 Variable Define ไม่ใช้ ( หรือใช้ count เพื่อเพิ่มค่า )

4 #include int main() { printf ("0\t"); printf ("1\t"); printf ("2\t"); printf ("3\t"); printf ("4\t");... printf ("10\t"); return 0; } #include int main() { int count = 0; printf ("%d\t",count++);... printf ("%d\t",count++); return 0; }

5 #include int main() { int count = 0; while (count <= 10) { printf ("%d\t",count++); } return 0; }

6 คำสั่งในการวนซ้ำในภาษาซี For While Do while

7 7 โปรแกรม แสดงผลตัวเลข 1 ถึงค่าที่ กำหนด | while จงเขียนผังงานและโปรแกรมที่มีการควบคุม ทิศทางแบบวนรอบโดยใช้คำสั่ง while เพื่อให้ โปรแกรมทำการบวกเลขจำนวนเต็มตั้งแต่ 1 จนถึง ค่าที่ผู้ใช้งานกำหนด Output Analysis ผลลัพธ์การบวกเลขจำนวนเต็ม ตั้งแต่ 1 ถึงค่าที่ผู้ใช้ กำหนด Input Analysis ค่าที่ผู้ใช้งานป้อนเข้ามา

8 8 โปรแกรม แสดงผลตัวเลข 1 ถึงค่าที่ กำหนด | while Process Analysis โปรแกรมถามว่าผู้ใช้งานต้องการบวกเลขตั้งแต่ 1 ถึงเลขใด วนรอบแบบ while เพื่อบวกค่า แสดงผลลัพธ์ที่ได้ Variable Define sum = 0 ผลรวมของการบวก โดยเริ่มต้นมีค่า เท่ากับ 0 i = 1 ค่าที่นำเข้าไปบวกกับ sum ในแต่ละรอบ โดยรอบแรกค่า i มีค่าเท่ากับ 1 และมีค่าเพิ่มขึ้นรอบละ 1 final เพื่อรับค่าจากผู้ใช้ และกำหนดจุดสิ้นสุด ของค่า i

9 9 START i=1,final,sum=0 i<=final True False i++ sum END final sum = sum + i

10 10 โปรแกรมแสดงผลตัวเลข 1 ถึงค่าที่ กำหนด | while int main() { int i = 1, final, sum=0; printf ("Enter final number : "); scanf ("%d",&final); while (i<=final) { sum = sum + i; i++; } printf ("Sum = %d",sum); return 0; }

11 คำสั่ง do-while do { statement-1.1; statement-1.2;... statement-1.n; } while (expression); do statement-1.1; while (expression);

12 12 โปรแกรม หาผลรวม 1 ถึง 100 | do- while จงเขียนผังงานและโปรแกรมสำหรับรวมเลข จำนวนเต็ม ตั้งแต่ 1 – 100 โดยใช้คำสั่ง do-while Output Analysis ผลรวมของเลขจำนวนเต็ม ตั้งแต่ Input Analysis ไม่มี

13 13 โปรแกรม หาผลรวม 1 ถึง 100 | do- while Process Analysis โปรแกรมทำการบวกค่าเก็บไว้ในตัวแปรผลลัพธ์ แล้วเพิ่ม ค่าจนถึง 100 Variable Define count เป็นตัวแปรชนิดจำนวนเต็มเพื่อนับจำนวน sum เป็นจำนวนเต็มเพื่อเก็บค่าผลรวม

14 14 START count=1, sum=0 count<=100 True False count++ sum END sum=sum+count

15 15 โปรแกรม หาผลรวม 1 ถึง 100 | do- while int main() { int count=1,sum=0; do { sum = sum + count; count++; } while(count<=100); printf ("Summation of 1 to 100 = %d",sum); return 0; }

16 คำสั่ง for initial เป็นส่วนที่ใช้กำหนดค่าเริ่มต้นให้กับตัว แปร condition เป็นเงื่อนไขเพื่อพิจารณา change เป็นส่วนที่เปลี่ยนแปลงค่าตัวแปร statement-1, 2,..., n เป็นคำสั่งที่จะทำงาน เมื่อเงื่อนไขเป็นจริง for (initial; expression; change) { statement-1.1; statement-1.2;... statement-1.n; }

17 17 รูปแบบการใช้คำสั่ง for

18 18 โปรแกรม หาผลรวม 1 ถึง 100 | for (2) Process Analysis – โปรแกรมทำการบวกค่าเก็บไว้ในตัวแปรผลลัพธ์ แล้ว เพิ่มค่าจนถึง 100 Variable Define count เป็นตัวแปรชนิดจำนวนเต็มเพื่อนับจำนวน sum เป็นจำนวนเต็มเพื่อเก็บค่าผลรวม

19 19 START sum=0 count<=100 True False count++ sum END sum=sum+count count=1

20 20 โปรแกรม หาผลรวม 1 ถึง 100 | for #include int main() { int sum=0, count; for (count=1; count<=100; count++) { sum = sum + count ; } printf ("Summation of 1 to 100 = %d",sum); return 0; }

21 21 โปรแกรม แสดงผล a – z | for จงเขียนผังงานและโปรแกรมสำหรับแสดงผล อักษร a – z ออกทางจอภาพ โดยใช้คำสั่ง for Output Analysis แสดงผล a – z ทางจอภาพ Input Analysis ไม่มี a b c d e f g h i j k l m n o p q r s t u v w x y z

22 22 โปรแกรม 5.5 แสดงผล a – z | for (2) Process Analysis โปรแกรมทำการวนรอบเพื่อแสดงผลอักษรตั้งแต่ a – z โดยการเพิ่มค่าตัวแปรขึ้นครั้งละ 1 ( ดูตาราง ASCII Code) Variable Define letter เป็นตัวแปรชนิดอักขระ printf ("%c\n",'a'); // printf ("%c\n",97); printf ("%c\n",'a'+1); // printf ("%c\n",98); printf ("%c\n",'a'+2); // printf ("%c\n",98); a b c

23 23 START letter letter<='z' True False letter++ letter END letter='a'

24 24 โปรแกรม แสดงผล a – z | for (4) #include int main() { char letter; for (letter='a'; letter<='z'; letter++) { printf ("%c ",letter); } return 0; }

25 25 โปรแกรม แสดงผลรูปสี่เหลี่ยม | for (1) จงเขียนผังงานและโปรแกรมแสดงผลรูปสี่เหลี่ยม ขนาด n x n โดยโปรแกรมจะรอรับจำนวนเต็มจาก ผู้ใช้งาน ดังตัวอย่าง Please enter number : 4 Output **** Please enter number : 9 Output *********

26 26 โปรแกรม แสดงผลรูปสี่เหลี่ยม | for (2) Output Analysis – ผลตัวเลข เป็นรูปสี่เหลี่ยมจัตุรัสขนาดเท่ากับจำนวนตัว เลขที่รับเข้ามา Input Analysis – เลขจำนวนเต็มที่ผู้ใช้ป้อนเข้ามา Process Analysis – โปรแกรมรอรับค่าจำนวนเต็มจากผู้ใช้งาน – โปรแกรมวนรอบเพื่อทำการแสดง '*' เป็นรูปสี่เหลี่ยม จัตุรัส

27 27 โปรแกรม แสดงผลรูปสี่เหลี่ยม | for (3) บรรทัดที่ 1 แสดงผล '\n' แล้วแสดงผล '*' จำนวนเท่ากับค่าที่ รับมา บรรทัดที่ 2 แสดงผล '\n' แล้วแสดงผล '*' จำนวนเท่ากับค่าที่ รับมา … บรรทัดที่ n แสดงผล '\n' แล้วแสดงผล '*' จำนวนเท่ากับค่าที่ รับมา Variable Define num เป็นจำนวนเต็มเพื่อใช้เก็บค่าตัวเลขที่ผู้ใช้ป้อน i เป็นจำนวนเต็มเพื่อใช้นับจำนวนบรรทัด j เป็นจำนวนเต็มเพื่อใช้นับจำนวน '*'

28 28 START num, i, j i<=num True False '\n' END i=1 num i++ j<=num j=1 j++ '*' True False

29 29 โปรแกรมแสดงผลรูปสี่เหลี่ยม | for () int main() { int num,i,j; printf ("Enter number : "); scanf ("%d",&num); for (i=1; i<=num; i++) { printf("\n"); for (j=1; j<=num; j++) { printf("*"); } return 0; }

30 30 โจทย์ : โปรแกรมคิดดอกเบี้ย จงเขียนผังงาน และโปรแกรมคำนวณดอกเบี้ย โดยโปรแกรมรับ เงินต้น ( บาท ) และดอกเบี้ยต่อปี (%) จำนวนเงินที่ผ่อนชำระต่อเดือน แล้วแสดงผล ว่าต้องใช้เวลากี่ปีในการผ่อนชำระ และจ่าย ดอกเบี้ยทั้งหมดคิดเป็นเท่าใด

31 5.4 คำถามท้ายบท 1. จงเขียนโปรแกรมแสดงรหัสแอสกี ตั้งแต่ 33 ถึง 55 DecimalASCII 33 ! 34 “ 35 #

32 คำถามท้ายบท 2. จงเขียนโปรแกรมรับตัวเลขเพื่อมาคำนวณหา ผลบวกกำลังสอง จนกระทั่งตัวเลขที่รับเข้ามามี ค่าเป็น 0 Enter a number : 2 Enter a number : -5 Enter a number : 0 Result : 29 32

33 คำถามท้ายบท 3. ข้อใดเป็นโปรแกรมที่รันไม่รู้จบ (Infinite loop) เมื่อกำหนด int i=0; 3.1 for(i=0; i>0; i++) printf("%d",i); 3.2 for(i=0; i%2!=0; i += 2) puts("a"); 3.3 while(i<7) printf("%d",i--); 3.4 do { i+=3; } while(i%3==0); 33

34 Quiz


ดาวน์โหลด ppt Pisit Nakjai การทำซ้ำ. สาเหตุที่ต้องมีการทำซ้ำ เหตุการณ์ที่เกิดขึ้นหลายรอบ เช่น โปรแกรมแสดง ชื่อ 20 ครั้ง เหตุการณ์ที่เกิดขึ้นหลายรอบ โดยมีการ เปลี่ยนแปลงค่า.

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


Ads by Google