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

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

การทำซ้ำ (for).

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


งานนำเสนอเรื่อง: "การทำซ้ำ (for)."— ใบสำเนางานนำเสนอ:

1 การทำซ้ำ (for)

2 โจทย์ จงเขียนโปรแกรมเพื่อแสดงข้อความ “Hello my student” จำนวน 10 บรรทัดทางหน้าจอ

3 วิเคราะห์ปัญหา Input ไม่มี Process การแสดงข้อความจำนวน 10 ครั้ง Output
ข้อความ Hello my student

4 ทำซ้ำๆ คอมพิวเตอร์จำได้มาก คำนวณได้รวดเร็ว และไม่บ่นเมื่อสั่งให้ทำงานซ้ำๆ การทำซ้ำทำได้ง่ายด้วยการ เขียนคำสั่งซ้ำตามจำนวนรอบที่ต้องการ ใช้ Loop มาครอบกลุ่มคำสั่งที่ต้องการให้ทำงานซ้ำๆ System.out.println(“Hello”); for(int i = 1 ; i<= 3; i++) { System.out.println(“Hello”); }

5 คำสั่งทำซ้ำในภาษาจาวา
คำสั่ง for คำสั่ง while คำสั่ง do… while โดยสัปดาห์นี้เราจะศึกษาที่คำสั่ง for กันก่อน

6 การใช้ for ภายในวงเล็บของ for แบ่งออกเป็น 3 ส่วน
for( x = 1 ; x <= 5 ; x++) แต่ละส่วนแยกจากกันด้วยเครื่องหมาย ; ส่วนแรก เป็นการตั้งค่าเริ่มต้นให้กับตัวแปร ส่วนสอง เป็นเงื่อนไขที่ทดสอบว่าถ้าเป็นจริงจะทำต่อ ส่วนสุดท้าย เป็นการเพิ่มค่าตัวแปรหลังทำงานเสร็จในแต่ละรอบ 1 2 3

7 for การเขียน loop ด้วย for นี้อ่านเข้าใจได้ว่า ให้ k เริ่มที่ 0
วนทำซ้ำตราบเท่าที่ k ยัง <= n หลังทำเสร็จในแต่ละรอบให้เพิ่มค่า k ไปหนึ่ง (เขียนได้เป็น k++) for(int k=0; k <= n ;k++){ System.out.println(k); }

8 คำสั่งทำซ้ำ ตัวอย่าง เช่น ต้องการเขียนโปรแกรมที่ทำกลุ่มคำสั่งหนึ่งเป็นจำนวน 100 รอบ เขียนได้ดังนี้ for(int i = 0 ; i < 100 ; i++) { //กลุ่มคำสั่งที่ต้องการทำซ้ำ 100 รอบ } ตัวแปร i ทำหน้าที่เป็นตัวนับจำนวนรอบที่ทำไปแล้ว i มีค่าเพิ่มขึ้นหนึ่งเสมอในแต่ละรอบ ดังนั้น (k == 100) หมายถึง เมื่อครบ 100 รอบแล้วให้ออกจาก loop เงื่อนไขเป็นเท็จ

9 เขียนโปรแกรม จงเขียนโปรแกรมเพื่อแสดงข้อความ “Hello my student” จำนวน 10 บรรทัดทางหน้าจอ for(int i = 1 ; i<= 10 ; i++) { System.out.println(“Hello my student”); }

10 โจทย์ เขียนโปรแกรมถามชื่อผู้ใช้ พร้อมกับรับเลข 1 จำนวน (n) จากนั้นแสดงชื่อดังกล่าวจำนวน n รอบทางหน้าจอ

11 วิเคราะห์ปัญหา Input เลข 1 จำนวน(n) ชื่อ Output แสดงชื่อจำนวน n รอบ

12 ออกแบบโปรแกรม แสดงข้อความ “What is your name?” รับชื่อจำไว้ใน name
Loop n ครั้ง แสดงค่าใน name

13 Loop รู้จบ กรณีต้องการให้วนทำซ้ำเป็นจำนวนตามค่าของตัวแปร n ก็แค่เปลี่ยนเลข 100 ใน code ก่อนหน้าเป็น n ดังนี้ for(int i = 0 ; i < 100 ; i++) { //กลุ่มคำสั่งที่ต้องการทำซ้ำ 100 รอบ } for(int i = 0 ; i < n ; i++) { //กลุ่มคำสั่งที่ต้องการทำซ้ำ 100 รอบ }

14 เขียนโปรแกรม เขียนโปรแกรมถามชื่อผู้ใช้ จากนั้นรับเลข 1 จำนวน (n) แล้วแสดงชื่อดังกล่าวจำนวน n รอบทางหน้าจอ Scanner kb = new Scanner(System.in); System.out.print(“What is your name? ”); String name = kb.next(); int n = kb.nextInt(); for(i=1 ; i<= n ;i++) { System.out.print(name); }

15 โจทย์ จงเขียนโปรแกรมหาค่าเฉลี่ยของชุดข้อมูลที่ผู้ใช้ป้อนทางแป้นพิมพ์
สมมุติเราต้องการหาค่าเฉลี่ยของข้อมูล 4 จำนวน เขียน code ได้อย่างไร

16 วิเคราะห์ปัญหา Input ตัวเลข 4 จำนวน Output ค่าเฉลี่ย

17 ออกแบบโปรแกรม กำหนดให้ sum = 0 Loop ทั้งหมด 4 รอบ 1.1 รับเลขจำไว้ใน x
1.2 คำนวณ sum = sum + x คำนวณ ans = sum / 4 แสดง ans

18 เขียนโปรแกรม int sum = 0; for(int i = 1 ; i <= 4 ; i++) { int x = kb.nextInt(); int sum = sum + x; } double ans = sum / 4.0; System.out.println(ans);

19 ตัวอย่าง : โปรแกรมหาค่าเฉลี่ย
กรณีที่เราไม่อยากกำหนดจำนวนข้อมูลแบบตายตัว ถามผู้ใช้ก่อนว่าจะหาค่าเฉลี่ยกี่จำนวน แล้ววนรับข้อมูลเป็นจำนวนรอบตามนั้น สามารถเขียน code ได้ดังนี้ เพิ่ม/แก้ไขคำสั่ง Scanner kb = new Scanner(System.in); int n = kb.nextInt(); // ใช้ n เก็บจำนวนข้อมูลที่ผู้ใช้ต้องการหาค่าเฉลี่ย double sum = 0; //ตัวแปรเก็บผลรวมของข้อมูล for(int i = 0 ; i < n ;i++ ) { sum = sum + kb.nextDouble(); // อ่านข้อมูลแล้วเพิ่มค่าในตัวแปรเก็บผลรวม } System.out.println(“ค่าเฉลี่ย = “ + (sum/n));

20 สรุป : วงวน for ภายในวงเล็บของ for แบ่งออกเป็น 3 ส่วน แต่ละส่วนแยกจากกันด้วยเครื่องหมาย ; เราสามารถละส่วนที่ 1 และส่วนที่ 2 ได้ แต่ต้องมี ; คงไว้ให้รู้ว่าส่วนใดไม่มี กรณีที่ละส่วนที่สองไว้ จะเหมือนกับว่ามีคำว่า true อยู่ส่วนที่สอง เป็นจริงตลอดกาล ให้ทำซ้ำคำสั่งที่อยู่ใน loop ตลอดไป เราสามารถประกาศตัวแปรที่ใช้เฉพาะในวงวนตรงส่วนที่หนึ่งของ for ได้เลย for (int k =0; k < n; k++) { } การทำแบบนี้แสดงว่าเราต้องการใช้ตัวแปร k แค่ใน loopเท่านั้น พอออกนอก loop จะไม่สามารถใช้งานได้ หากเผลอไปใช้ตัวแปรโปรแกรมจะแจ้งข้อผิดพลาด

21 โจทย์ เขียนโปรแกรมรับเลข 1 จำนวน (n) จากนั้นรับเลขอีก n ตัว แล้วให้ทำการแสดงผลลัพธ์ว่าเลขแต่ละตัวเป็นเลขคู่ หรือ เลขคี่ ทางหน้าจอ

22 วิเคราะห์ปัญหา Input Output จำนวนครั้งการทำซ้ำ (n)
ตัวเลขที่ต้องการทดสอบ Output ถ้าเป็นเลขคู่ปริ้น “Even” ถ้าเป็นเลขคี่ปริ้น “Odd”

23 ออกแบบโปรแกรม แสดงข้อความ “How many number? : ” รับค่าตัวเลขจำใน n
Loop ทั้งหมด n รอบ 3.1 แสดง Number 3.2 รับเลขจำไว้ใน x 3.3 if( x เป็นเลขคู่ ) แสดง Even else แสดง Odd

24 เขียนโปรแกรม System.out.println(“How many number? :”) int n = kb.nextInt(); for(int i=1 ; i<=n ; i++) { System.out.println(“Number :”); int x = kb.nextInt(); if(x %2 == 0 ) { System.out.println(“Even”); } else { System.out.println(“Odd”); }

25 กิจกรรม จงหาผลลัพธ์ของโปรแกรม int sum = 0;
for(int i = 5; i<=10; i++) { sum = sum + i; } System.out.println(sum); ก. 35 ข. 45 ค. 55 ง จ. ไม่มีข้อใดถูก

26 กิจกรรม : หาผลลัพธ์ของโปรแกรม
for(int i = 0 ; i !=9 ; i = i + 2) System.out.println(i); for(int i = 1 ; i <= 20; i = i * 2) for(int i = 10 ; i >= 0 ; i--)

27 กิจกรรม : เขียนโปรแกรม
เขียนโปรแกรมแสดงผลตัวเลขตั้งแต่ ( ) เขียนโปรแกรมแสดงผลตัวเลข ( ) เขียนโปรแกรมแสดงผลตัวเลข ( )


ดาวน์โหลด ppt การทำซ้ำ (for).

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


Ads by Google