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

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

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

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


งานนำเสนอเรื่อง: "การทำซ้ำ (for). โจทย์ จงเขียนโปรแกรมเพื่อแสดงข้อความ “Hello my student” จำนวน 10 บรรทัดทางหน้าจอ."— ใบสำเนางานนำเสนอ:

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

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

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

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

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

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

7 for การเขียน loop ด้วย for นี้อ่านเข้าใจได้ว่า – ให้ k เริ่มที่ 0 – วนทำซ้ำตราบเท่าที่ k ยัง <= n – หลังทำเสร็จในแต่ละรอบให้เพิ่มค่า k ไปหนึ่ง ( เขียนได้เป็น k++) 7 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 คำสั่งทำซ้ำ 8 เงื่อนไขเป็นเท็จ

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. เลข 1 จำนวน (n) 2. ชื่อ Output – แสดงชื่อจำนวน n รอบ

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

13 Loop รู้จบ กรณีต้องการให้วนทำซ้ำเป็นจำนวนตามค่า ของตัวแปร n ก็แค่เปลี่ยนเลข 100 ใน code ก่อนหน้าเป็น n ดังนี้ 13 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 ได้อย่างไร 15

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

17 ออกแบบโปรแกรม 1. กำหนดให้ sum = 0 2.Loop ทั้งหมด 4 รอบ 1.1 รับเลขจำไว้ใน x 1.2 คำนวณ sum = sum + x 3. คำนวณ ans = sum / 4 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 ได้ดังนี้ 19 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 จะไม่สามารถใช้งานได้ หากเผลอ ไปใช้ตัวแปรโปรแกรมจะแจ้งข้อผิดพลาด 20

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

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

23 ออกแบบโปรแกรม 1. แสดงข้อความ “How many number? : ” 2. รับค่าตัวเลขจำใน n 3.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 ง. 65 จ. ไม่มี ข้อใดถูก 25

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

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


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

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


Ads by Google