SlideShare une entreprise Scribd logo
1  sur  3
Télécharger pour lire hors ligne
ใบความรูที่ 4.3
                                            โครงสราง for ลูป

   ในใบความรูกอนหนานี้เราไดเห็นโครงสรางของโปรแกรมแบบวนซ้ําที่ใชคําสั่ง while และ
do..while เมื่อพิจารณาการใชคําสั่งเหลานี้ในการเขียนลูปแบบวนนับ (counting loop) เราจะพบวา
โครงสรางของลูปมักจะมีสวนประกอบเหลานี้เสมอ
     • สวนกําหนดคาเริ่มตนใหตัวนับ – เปนคําสั่งใหคาเริ่มตนกับตัวแปรที่นํามาใชเปนตัวนับ คําสั่งนี้มัก
       ถูกเขียนไวทันทีกอนที่โปรแกรมจะเขาทํางานในโครงสราง while หรือ do..while
     • สวนคําสังที่ถกทําซ้ํา – สวนหลักของลูปที่ประกอบดวยคําสั่งที่ถูกเรียกทํางานในแตละรอบการวน
                ่ ู
       ซ้ํา
     • สวนเงื่อนไข – ใชสําหรับกําหนดเงื่อนไขวาคําสั่งในลูปจะถูกเรียกทําตอหรือไม
     • สวนปรับคาตัวนับ – มักเปนเพียงคําสั่งสั้น ๆ เพื่อเพิ่มหรือลดคาตัวแปรที่นํามาใชเปนตัวนับ
        ตัวอยางโปรแกรมตอไปนี้แสดงใหเห็นสวนประกอบตาง ๆ ทั้งสี่สวน (แตละสวนกํากับไวดวยคอม
เมนตทายบรรทัด)
 using System;
 class CountDown {
   static void Main() {
     int i;
     i = 10;                                      //   (1)    สวนกําหนดคาเริ่มตนใหตัวนับ
     while (i >= 0) {                             //   (3)    สวนเงื่อนไข
       Console.WriteLine(i);                      //   (2)    สวนคําสั่งที่ถูกทําซ้ํา
       i--;                                       //   (4)    สวนปรับคาตัวนับ
     }
   }
 }

       เนื่องจากลูปแบบวนนับมีการใชงานบอยครั้งในโปรแกรมทั่ว ๆ ไป ภาษา C# (รวมถึงภาษา
โปรแกรมอื่น ๆ ดวย) จึงไดเตรียมโครงสรางพิเศษเพื่อใชจัดการลูปประเภทนี้ไดโดยสะดวกยิ่งขึ้น
โครงสรางนี้คือโครงสราง for ซึ่งมีรปแบบการใชงานดังนี้
                                    ู
 for (init_stmt; condition; update_stmt) {
    statement1;
    statement2;
    :
    statementN;
 }




78                                      สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี
ผังงานดานลางแสดงขั้นตอนการทํางานของ for ลูป สังเกตวาเงื่อนไขของลูปจะถูกตรวจสอบ
กอนที่คําสั่งวนซ้ําคําสั่งแรกจะถูกเรียกใช ดังนั้นโครงสราง for จึงมีการทํางานที่คลายคลึงกับโครงสราง
while มากกวาโครงสราง do..while




ตัวอยางที่ 4.5 โปรแกรมตอไปนี้จะแสดงตัวเลข 1,2,3,...,20 บนหนาจอ
  using System;
  class Counting {
    static void Main() {
      int i;
      for (i = 1; i <= 20; i++)
         Console.WriteLine(i);
    }
  }




                                     สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี                    79
ตัวอยางที่ 4.6 โปรแกรมตอไปนี้รับตัวเลขอินพุท N จากผูใชและแสดงตัวเลขทั้งหมดทีเ่ ปนตัวประกอบของ
N (นําไปหาร N แลวลงตัว)
 using System;
 class Divisors {
   static void Main() {
     int i, N;

         Console.Write("Enter N: ");
         N = int.Parse(Console.ReadLine());
         for (i = 1; i <= N; i++) {
           if (N%i == 0) Console.WriteLine(i);
         }
     }
 }

ตัวอยางผลการทํางาน
 Enter N: 100
 1
 2
 4
 5
 10
 20
 25
 50
 100




80                                  สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี

Contenu connexe

Tendances

Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)
Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)
Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)Anekwong Yoddumnern
 
การแสดงผลและการรับข้อมูล
การแสดงผลและการรับข้อมูลการแสดงผลและการรับข้อมูล
การแสดงผลและการรับข้อมูลkorn27122540
 
capture 59170105 group 2
capture 59170105 group 2capture 59170105 group 2
capture 59170105 group 2Thamon Monwan
 
การเขียนโปรแกรมภาษาซี
การเขียนโปรแกรมภาษาซีการเขียนโปรแกรมภาษาซี
การเขียนโปรแกรมภาษาซีchoco336
 
หลักการเขียนโปรแกรม
หลักการเขียนโปรแกรมหลักการเขียนโปรแกรม
หลักการเขียนโปรแกรมhateriseup
 
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีNattapon
 
บทที่3คำสั่งควบคุมโปรแกรม
บทที่3คำสั่งควบคุมโปรแกรมบทที่3คำสั่งควบคุมโปรแกรม
บทที่3คำสั่งควบคุมโปรแกรมpennapa34
 

Tendances (17)

Know4 1
Know4 1Know4 1
Know4 1
 
05 Loops
05  Loops05  Loops
05 Loops
 
Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)
Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)
Error handle-OOP(รูปแบบและลักษณะการ Error ในโปรแกรม)
 
การแสดงผลและการรับข้อมูล
การแสดงผลและการรับข้อมูลการแสดงผลและการรับข้อมูล
การแสดงผลและการรับข้อมูล
 
capture 59170105 group 2
capture 59170105 group 2capture 59170105 group 2
capture 59170105 group 2
 
การเขียนโปรแกรมภาษาซี
การเขียนโปรแกรมภาษาซีการเขียนโปรแกรมภาษาซี
การเขียนโปรแกรมภาษาซี
 
รหัสเทียม Psuedo code
รหัสเทียม Psuedo codeรหัสเทียม Psuedo code
รหัสเทียม Psuedo code
 
หลักการเขียนโปรแกรม
หลักการเขียนโปรแกรมหลักการเขียนโปรแกรม
หลักการเขียนโปรแกรม
 
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซีใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
ใบความรู้ที่ 1 ความรู้พื้นฐานโปรแกรมภาษาซี
 
Unit9
Unit9Unit9
Unit9
 
Week8
Week8Week8
Week8
 
Unit12
Unit12Unit12
Unit12
 
Unit10
Unit10Unit10
Unit10
 
Unit11
Unit11Unit11
Unit11
 
บทที่3คำสั่งควบคุมโปรแกรม
บทที่3คำสั่งควบคุมโปรแกรมบทที่3คำสั่งควบคุมโปรแกรม
บทที่3คำสั่งควบคุมโปรแกรม
 
Unit7
Unit7Unit7
Unit7
 
3.6 ฟังก์ชัน
3.6 ฟังก์ชัน3.6 ฟังก์ชัน
3.6 ฟังก์ชัน
 

En vedette (20)

Emerald
EmeraldEmerald
Emerald
 
SCURC Presentation-RA 4.9.15-fix
SCURC Presentation-RA 4.9.15-fixSCURC Presentation-RA 4.9.15-fix
SCURC Presentation-RA 4.9.15-fix
 
Kaos
KaosKaos
Kaos
 
Enfermedad & muerte (steve jobs)
Enfermedad & muerte (steve jobs)Enfermedad & muerte (steve jobs)
Enfermedad & muerte (steve jobs)
 
Ejercicio de word avanzado estudiantes
Ejercicio de word avanzado estudiantesEjercicio de word avanzado estudiantes
Ejercicio de word avanzado estudiantes
 
Employer branding w rekrutacji
Employer branding w rekrutacjiEmployer branding w rekrutacji
Employer branding w rekrutacji
 
Consistent income forever
Consistent income foreverConsistent income forever
Consistent income forever
 
Comenzar
ComenzarComenzar
Comenzar
 
JRH Resume
JRH ResumeJRH Resume
JRH Resume
 
fibers
fibersfibers
fibers
 
Kynangtimviec
KynangtimviecKynangtimviec
Kynangtimviec
 
Writing 7 referencing
Writing 7 referencingWriting 7 referencing
Writing 7 referencing
 
Guia del usuario
Guia del usuarioGuia del usuario
Guia del usuario
 
15-12-29 MMM Oct Issue Extract
15-12-29 MMM Oct Issue Extract15-12-29 MMM Oct Issue Extract
15-12-29 MMM Oct Issue Extract
 
Santiago
SantiagoSantiago
Santiago
 
Evangelho no lar com crianças (23)
Evangelho no lar com crianças (23)Evangelho no lar com crianças (23)
Evangelho no lar com crianças (23)
 
Fièvres et viroses à Madagascar
Fièvres et viroses à MadagascarFièvres et viroses à Madagascar
Fièvres et viroses à Madagascar
 
Contador laico
Contador laicoContador laico
Contador laico
 
Ass4 2
Ass4 2Ass4 2
Ass4 2
 
FRUITION.A5.Invitation.FINAL
FRUITION.A5.Invitation.FINALFRUITION.A5.Invitation.FINAL
FRUITION.A5.Invitation.FINAL
 

Similaire à Know4 3

Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : ThreadIMC Institute
 
9789740328766
97897403287669789740328766
9789740328766CUPress
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นFinian Nian
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นFinian Nian
 
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวา
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวาUnit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวา
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวาIrinApat
 
คำสั่งควบคุมของโปรแกรม
คำสั่งควบคุมของโปรแกรมคำสั่งควบคุมของโปรแกรม
คำสั่งควบคุมของโปรแกรมParn Nichakorn
 
อัลกอริทึมและการวิเคราะห์ปัญหา
อัลกอริทึมและการวิเคราะห์ปัญหาอัลกอริทึมและการวิเคราะห์ปัญหา
อัลกอริทึมและการวิเคราะห์ปัญหาsupatra178
 
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้นC:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น-
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาAeew Autaporn
 
พื้นฐานการสร้าง Java
พื้นฐานการสร้าง Javaพื้นฐานการสร้าง Java
พื้นฐานการสร้าง JavaJanë Janejira
 

Similaire à Know4 3 (20)

Java Programming [12/12] : Thread
Java Programming [12/12] : ThreadJava Programming [12/12] : Thread
Java Programming [12/12] : Thread
 
Know4 2
Know4 2Know4 2
Know4 2
 
หลักการเขียนโปรแกรม
หลักการเขียนโปรแกรมหลักการเขียนโปรแกรม
หลักการเขียนโปรแกรม
 
9789740328766
97897403287669789740328766
9789740328766
 
9789740328766
97897403287669789740328766
9789740328766
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้นคลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
คลาสและการเขียนโปรแกรมเชิงวัตถุเบื้องต้น
 
ฟังก์ชั่น Switch
ฟังก์ชั่น Switchฟังก์ชั่น Switch
ฟังก์ชั่น Switch
 
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวา
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวาUnit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวา
Unit2 เรื่องการเขียนโปรแกรมด้วยภาษาจาวา
 
Ass1 1
Ass1 1Ass1 1
Ass1 1
 
คำสั่งควบคุมของโปรแกรม
คำสั่งควบคุมของโปรแกรมคำสั่งควบคุมของโปรแกรม
คำสั่งควบคุมของโปรแกรม
 
Ch17
Ch17Ch17
Ch17
 
อัลกอริทึมและการวิเคราะห์ปัญหา
อัลกอริทึมและการวิเคราะห์ปัญหาอัลกอริทึมและการวิเคราะห์ปัญหา
อัลกอริทึมและการวิเคราะห์ปัญหา
 
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้นC:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
C:\Documents And Settings\Administrator\Desktop\Ch00 คอมพิวเตอร์เบื้องต้น
 
พื้นฐานภาษาจาวา
พื้นฐานภาษาจาวาพื้นฐานภาษาจาวา
พื้นฐานภาษาจาวา
 
พื้นฐานการสร้าง Java
พื้นฐานการสร้าง Javaพื้นฐานการสร้าง Java
พื้นฐานการสร้าง Java
 
02 basic
02 basic02 basic
02 basic
 
Pbl2
Pbl2Pbl2
Pbl2
 
ฟังก์ชั่น break
ฟังก์ชั่น breakฟังก์ชั่น break
ฟังก์ชั่น break
 
Control structure
Control structureControl structure
Control structure
 

Plus de โรงเรียนอุตรดิตถ์ดรุณี

Plus de โรงเรียนอุตรดิตถ์ดรุณี (20)

Ass4 5
Ass4 5Ass4 5
Ass4 5
 
Ass4 4
Ass4 4Ass4 4
Ass4 4
 
Ass4 3
Ass4 3Ass4 3
Ass4 3
 
Ass4 1
Ass4 1Ass4 1
Ass4 1
 
Ass3 5
Ass3 5Ass3 5
Ass3 5
 
Ass3 4
Ass3 4Ass3 4
Ass3 4
 
Ass3 3
Ass3 3Ass3 3
Ass3 3
 
Ass3 2
Ass3 2Ass3 2
Ass3 2
 
Ass3 1
Ass3 1Ass3 1
Ass3 1
 
Know3 4
Know3 4Know3 4
Know3 4
 
Know3 3
Know3 3Know3 3
Know3 3
 
Know3 1
Know3 1Know3 1
Know3 1
 
Ass2 3
Ass2 3Ass2 3
Ass2 3
 
Ass2 2
Ass2 2Ass2 2
Ass2 2
 
Ass2 1
Ass2 1Ass2 1
Ass2 1
 
Know2 2
Know2 2Know2 2
Know2 2
 
Know2 1
Know2 1Know2 1
Know2 1
 
Know1 4
Know1 4Know1 4
Know1 4
 
Know1 3
Know1 3Know1 3
Know1 3
 
Know1 2
Know1 2Know1 2
Know1 2
 

Know4 3

  • 1. ใบความรูที่ 4.3 โครงสราง for ลูป ในใบความรูกอนหนานี้เราไดเห็นโครงสรางของโปรแกรมแบบวนซ้ําที่ใชคําสั่ง while และ do..while เมื่อพิจารณาการใชคําสั่งเหลานี้ในการเขียนลูปแบบวนนับ (counting loop) เราจะพบวา โครงสรางของลูปมักจะมีสวนประกอบเหลานี้เสมอ • สวนกําหนดคาเริ่มตนใหตัวนับ – เปนคําสั่งใหคาเริ่มตนกับตัวแปรที่นํามาใชเปนตัวนับ คําสั่งนี้มัก ถูกเขียนไวทันทีกอนที่โปรแกรมจะเขาทํางานในโครงสราง while หรือ do..while • สวนคําสังที่ถกทําซ้ํา – สวนหลักของลูปที่ประกอบดวยคําสั่งที่ถูกเรียกทํางานในแตละรอบการวน ่ ู ซ้ํา • สวนเงื่อนไข – ใชสําหรับกําหนดเงื่อนไขวาคําสั่งในลูปจะถูกเรียกทําตอหรือไม • สวนปรับคาตัวนับ – มักเปนเพียงคําสั่งสั้น ๆ เพื่อเพิ่มหรือลดคาตัวแปรที่นํามาใชเปนตัวนับ ตัวอยางโปรแกรมตอไปนี้แสดงใหเห็นสวนประกอบตาง ๆ ทั้งสี่สวน (แตละสวนกํากับไวดวยคอม เมนตทายบรรทัด) using System; class CountDown { static void Main() { int i; i = 10; // (1) สวนกําหนดคาเริ่มตนใหตัวนับ while (i >= 0) { // (3) สวนเงื่อนไข Console.WriteLine(i); // (2) สวนคําสั่งที่ถูกทําซ้ํา i--; // (4) สวนปรับคาตัวนับ } } } เนื่องจากลูปแบบวนนับมีการใชงานบอยครั้งในโปรแกรมทั่ว ๆ ไป ภาษา C# (รวมถึงภาษา โปรแกรมอื่น ๆ ดวย) จึงไดเตรียมโครงสรางพิเศษเพื่อใชจัดการลูปประเภทนี้ไดโดยสะดวกยิ่งขึ้น โครงสรางนี้คือโครงสราง for ซึ่งมีรปแบบการใชงานดังนี้ ู for (init_stmt; condition; update_stmt) { statement1; statement2; : statementN; } 78 สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี
  • 2. ผังงานดานลางแสดงขั้นตอนการทํางานของ for ลูป สังเกตวาเงื่อนไขของลูปจะถูกตรวจสอบ กอนที่คําสั่งวนซ้ําคําสั่งแรกจะถูกเรียกใช ดังนั้นโครงสราง for จึงมีการทํางานที่คลายคลึงกับโครงสราง while มากกวาโครงสราง do..while ตัวอยางที่ 4.5 โปรแกรมตอไปนี้จะแสดงตัวเลข 1,2,3,...,20 บนหนาจอ using System; class Counting { static void Main() { int i; for (i = 1; i <= 20; i++) Console.WriteLine(i); } } สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี 79
  • 3. ตัวอยางที่ 4.6 โปรแกรมตอไปนี้รับตัวเลขอินพุท N จากผูใชและแสดงตัวเลขทั้งหมดทีเ่ ปนตัวประกอบของ N (นําไปหาร N แลวลงตัว) using System; class Divisors { static void Main() { int i, N; Console.Write("Enter N: "); N = int.Parse(Console.ReadLine()); for (i = 1; i <= N; i++) { if (N%i == 0) Console.WriteLine(i); } } } ตัวอยางผลการทํางาน Enter N: 100 1 2 4 5 10 20 25 50 100 80 สถาบันสงเสริมการสอนวิทยาศาสตรและเทคโนโลยี