คำสั่ง while และ คำสั่ง do..while

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
อัลกอริทึ่มทำงานวนซ้ำ
Advertisements

บทที่ 7 รีเคอร์ซีฟ ระหว่างการออกแบบเขียนโปรแกรมแบบบนลงล่าง (Top-down Design) จะมีงานย่อย(Subtask) เพื่อแก้ปัญหาในแต่ละเรื่อง และผู้เขียนโปรแกรมต้องการใช้งานย่อยในลักษณะที่เรียกตัวเองขึ้นมาทำงาน.
ครั้งที่ 4 “for statement”
BC322 ครั้งที่ 6 Text file BC322 : computer Programming (Week6)
การเรียงลำดับข้อมูล(Sorting)
การเขียนโปรแกรม แบบมีโครงสร้าง (ต่อ)
Control Statement for while do-while.
การโปรแกรมควบคุมแบบทำงานซ้ำ
Lecture no. 5 Control Statements
ตัวอย่าง Flowchart.
การควบคุมทิศทางการทำงาน
LAB # 4 Computer Programming 1 1. พิจารณาโปรแกรมต่อไปนี้
LAB # 5 Computer Programming 1 1.
LAB # 4.
คำสั่ง while ควบคุมการทำงานวนซ้ำ กรณีระบบงานมีลักษณะตรวจสอบเงื่อนไขก่อน แล้วเข้าสู่ส่วนลำดับงานคำสั่งที่กำหนดไว้ การเขียนคำสั่ง while ต้องกำหนดนิพจน์แบบตรรกะเป็นเงื่อนไขมีค่าในหน่วยความจำเป็น.
บทที่ 5 การทำงานแบบวนซ้ำ
Week 15 C Programming.
CE 112 บทที่ 5 การทำซ้ำในภาษา C
Lab 8: คำสั่ง Do-While อ.ณัฐพงศ์ พยัฆคิน.
อ.อรวรรณ เชาวลิต For คำสั่งวนซ้ำ อ.อรวรรณ เชาวลิต
คำสั่งวนซ้ำ (Looping)
โครงสร้างควบคุม 1. โครงสร้างควบคุมแบบวนทางเลือก
WHILE..DO คำสั่งควบคุมให้ทำงานซ้ำ โดยที่ต้องตรวจสอบเงื่อนไขก่อนที่จะทำ
Looping การวนรอบ บทที่ 4.
Repetitive Or Iterative
คำสั่งควบคุมเงื่อนไข และการทำงานเป็นรอบ
คำสั่งควบคุมการทำงาน
สุพจน์ สวัตติวงศ์ gamepad.pigcanfly.com
การทดลองที่ 9 Loops (วงวน) การทดลองที่ 9 Loops (วงวน)
Chapter 5 คำสั่งควบคุมการทำซ้ำ
Chapter 7 Iteration Statement
ครูรัตติยา บุญเกิด.
ฟังก์ชัน ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ ศูนย์คอมพิวเตอร์
การทำซ้ำด้วยคำสั่ง while
คำสั่ง while และ do…while
การทำซ้ำด้วย คำสั่ง for ง การเขียนได นามิกเว็บเพจ ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดง พิทยาคม.
การเขียนเว็บเพจด้วยภาษา php ศูนย์คอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
คำสั่ง for ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์
Week 3 Flow Control in PHP
การเขียนผังงานแบบทำซ้ำ
Week 6 การทำซ้ำโดย for loop
Computer Programming for Engineers
Week 5 การทำซ้ำโดย while loop และ do while loop
โปรแกรมประยุกต์อื่นๆ
Week 6 การทำซ้ำโดย for loop
Chapter 5 การทำซ้ำโดย while loop และ do while loop
Week 5 การทำซ้ำโดย while loop และ do while loop
หลักการเขียนโปรแกรม ( )
CHAPTER 4 Control Statements
การเขียนโปรแกรมแบบวนซ้ำ: คำสั่ง while คำสั่ง do….while
คำสั่งวนซ้ำ นายมาโนชญ์ แสงศิริ ครูผู้ช่วย โรงเรียนพิจิตรพิทยาคม
LOOPLOOP. LOOP คืออะไร ? - วงรอบการทำงาน - ทำงานแบบซ้ำๆ ไปเรื่อยๆตามเงื่อนไข เช่น - การแพ๊คของ 50 ชิ้นใส่กล่อง ทำไปเรื่อยๆ จนกว่า ของจะหมด - ตีดอทไปเรื่อยๆ.
อัลกอริทึ่มทำงานวนซ้ำ
ตัวแปร Array แบบ 1 มิติ การเขียนโปรแกรมแบบวนซ้ำ
Chapter 6 Repetition Structure[2] ผู้สอน อ. ยืนยง กันทะเนตร สาขาวิชาเทคโนโลยี คอมพิวเตอร์เคลื่อนที่ ng.
อ. วชิระ หล่อประดิษฐ์. ตัว ดำเนินกา ร ศัพท์เฉพาะตัวอย่ าง ผลลัพธ์ ให้ a=3; b=2; Greater thana > b;True
หลักการเขียนโปรแกรม ( )
Computer Programming Asst. Prof. Dr. Choopan Rattanapoka
บทที่ 7 เงื่อนไขในภาษาซี
การเขียน แบบวนซ้ำ , วนลูป
C-Programming บทที่ 8 การทำซ้ำ C Programming.
การทำซ้ำ Pisit Nakjai.
การทำงานแบบวนซ้ำ (Iteration).
Computer Programming การเขียนโปรแกรมคอมพิวเตอร์
Computer Programming การเขียนโปรแกรม คอมพิวเตอร์ สัปดาห์ที่ 6 คำสั่งควบคุมการทำงานแบบ เงื่อนไขและคำสั่งควบคุมการ ทำงานแบบวนซ้ำ.
Week 5 While and Do-While loop (Control Structure 2)
Computer Program คือ ขั้นตอนการทำงาน ของคอมพิวเตอร์
การทำซ้ำ (for).
รูปแบบของการใช้คำสั่ง for for( ตัวแปร = ค่าเริ่มต้น ; นิพจน์ตรรกะ ; ค่าเพิ่มหรือค่าลด ) { statement(s); } ตัวอย่าง กรณีกำหนดการวนซ้ำเป็นค่าคงที่ For(n=1;n
บทที่ 11 พอยเตอร์ C Programming C-Programming. จันทร์ดารา Surin Campus : มีอะไรบ้างในบทนี้  ตัวแปรพอยเตอร์ (Pointer) เป็นตัว แปรที่แปลกและแตกต่างไปจากตัว.
ใบสำเนางานนำเสนอ:

คำสั่ง while และ คำสั่ง do..while BC322 ครั้งที่ 5 คำสั่ง while และ คำสั่ง do..while BC322 : Computer Programming (ครั้งที่ 5)

คำสั่ง while จะใช้เมื่อ... เมื่อต้องการให้เกิดการทำงานซ้ำ การทำงานซ้ำ : รู้จำนวนรอบหรือไม่รู้จำนวนรอบการทำงานก็ทำได้ เช็คเงื่อนไขก่อน ถ้าจริง ทำ ถ้าไม่จริง ไม่ทำ ใช้ทำงานแทนคำสั่ง for ได้ BC322 : Computer Programming (ครั้งที่ 5)

รูปแบบ คำสั่งwhile while (เงื่อนไข) { คำสั่ง1; คำสั่ง2; ..... } BC322 : Computer Programming (ครั้งที่ 5)

การใช้ while จะต้องมี 3 สิ่งคือ ค่าเริ่มต้นการเข้า loop (อาจรับค่าหรือกำหนดค่า) กำหนดเงื่อนไข (loop ทำเมื่อเงื่อนไขเป็นจริง) มีการเปลี่ยนแปลงค่าตัวแปรก่อนวนกลับไปตรวจสอบเงื่อนไข BC322 : Computer Programming (ครั้งที่ 5)

   เงื่อนไข N Y while คำสั่ง ... อาจรับค่าหรือกำหนดค่าเริ่มต้นก่อนเข้า loop  ค่าเริ่มต้นของตัวแปร  เงื่อนไข N Y คำสั่ง ...  คำสั่งเพื่อเปลี่ยนค่าตัวแปร ก่อนตรวจสอบเงื่อนไข BC322 : Computer Programming (ครั้งที่ 5)

แบบที่ 1 กรณีที่รู้จำนวนรอบในการทำงาน BC322 : Computer Programming (ครั้งที่ 5)

Ex1 จงเขียนโปรแกรมแสดงค่า 1 – 10 ออกทางจอภาพ #include<stdio.h> void main() { int i = 1; while (i <= 10) printf(“i = %d”,i); i=i+1; } getch(); 1 2 3 BC322 : Computer Programming (ครั้งที่ 5)

Ex2 จงเขียนโปรแกรม เพื่อรับค่าน้ำหนักเพื่อน 20 คน แล้วหาค่าผลรวมของน้ำหนัก Input : ................................... Output : ............................... START ตัวอย่างผลรัน Enter weight : 45.7 Enter weight : 67.2 .... Sum of weight = 652.7 kg. BC322 : Computer Programming (ครั้งที่ 5)

Solution BC322 : Computer Programming (ครั้งที่ 5)

ตอบ........... Ex3 จงหาผลรวมของเลข 1-10 1 2 3 #include <stdio.h> #include <conio.h> void main() { int num, sum; clrscr(); num = 1; sum = 0; while (num <= 10) sum =sum+ num; num=num+1; } printf( "%d\n", sum ); 1 ตอบ........... 2 3 BC322 : Computer Programming (ครั้งที่ 5)

float score, total ............, average; /* Find the average of scores */ #include <stdio.h> void main() { int count; float score, total ............, average; .............................. while (.........................) printf( "Enter score: " ); scanf( ................................... ); total =total+ score; ........................................ } average = ...................................... printf( "The average is %6.2f\n", average ); Ex4 โปรแกรมคำนวณค่าเฉลี่ยของคะแนน 3 ค่า จงเติมคำสั่งที่ขาดหายไป BC322 : Computer Programming (ครั้งที่ 5)

แบบที่ 2 กรณีที่ไม่รู้จำนวนรอบในการทำงาน BC322 : Computer Programming (ครั้งที่ 5)

Ex5 โปรแกรมเพื่อรับค่าอายุเพื่อน แต่จะหยุดรับเมื่ออายุเป็นเลข 0 แล้วหาค่าผลรวมอายุ #include<stdio.h> void main() { int age,Sum=0; printf(“Enter Age (0 to stop) : “); scanf(“%d”,&age); while (age != 0) Sum=Sum+age; } printf(“Summary is %d”,Sum); 1 2 3 BC322 : Computer Programming (ครั้งที่ 5)

START Flowchart Ex5 BC322 : Computer Programming (ครั้งที่ 5)

Ex6 ร้านขายของแห่งหนึ่งต้องการเขียนโปรแกรมเพื่อคำนวณหายอดเงินที่ลูกค้าจะต้องชำระภายหลังจากการซื้อสินค้า โดยจะหยุดการทำงานเมื่อจำนวนสินค้าเป็น 0 ตัวอย่างการรับค่าและแสดงผล Enter amount : 2 Enter price : 20 You must pay 40 baht * * * * * * * * * * * * * * * * * * Enter amount : 8 Enter price : 60 You must pay 480 baht Enter amount : 0 Thank you Input : .......................... .......................... Output :......................... ........................... BC322 : Computer Programming (ครั้งที่ 5)

Solution Ex6 BC322 : Computer Programming (ครั้งที่ 5)

คำสั่ง do..while จะใช้เมื่อ ..... เมื่อต้องการให้เกิดการทำงานซ้ำ ไม่รู้ว่าจะต้องทำซ้ำกี่ครั้ง (รู้ก็ใช้ได้) รู้ว่าจะหยุดทำเมื่อไหร่ ในครั้งแรกของการทำงานจะไม่มีการทดสอบเงื่อนไข(ทำฟรี 1 รอบ) BC322 : Computer Programming (ครั้งที่ 5)

รูปแบบdo-while จะมีการตรวจสอบเงื่อนไข ภายหลังจากทำงานมาแล้ว 1 รอบ do { คำสั่ง1; คำสั่ง2; ... } while (เงื่อนไข); จะมีการตรวจสอบเงื่อนไข ภายหลังจากทำงานมาแล้ว 1 รอบ BC322 : Computer Programming (ครั้งที่ 5)

คำสั่ง เงื่อนไข Y N คำสั่ง flowchart do..while BC322 : Computer Programming (ครั้งที่ 5)

Ex7 จงเขียนโปรแกรมแสดงค่า 1 – 10 ออกทางจอภาพ #include<stdio.h> void main() { int i = 1; do printf(“i = %d”,i); i=i+1; } while (i <= 10); } BC322 : Computer Programming (ครั้งที่ 5)

จากนั้นให้ขึ้นข้อความ Do you want to continue (‘Y/N’) ? Ex 8 จงเขียนโปรแกรมเพื่อรับค่าตัวเลข 1 จำนวนเพื่อตรวจสอบว่าเป็นเลขคู่(Even number) หรือเป็นเลขคี่(Odd Number) จากนั้นให้ขึ้นข้อความ Do you want to continue (‘Y/N’) ? เพื่อถามว่าต้องการจะรับค่าตัวเลขตัวถัดไปหรือไม่ ถ้าผู้ใช้กดปุ่ม Y จะให้มีการรับค่าตัวเลขถัดไป ถ้าผู้ใช้กดปุ่ม N โปรแกรมจะจบการทำงาน ตัวอย่างการรับค่าและแสดงผล Enter Number : 20 20 is even number Do you want to continue(Y/N) : Y * * * * * * * * * * * * * * * * * * Enter amount : 15 15 is odd number Do you want to continue(Y/N) : N BC322 : Computer Programming (ครั้งที่ 5)

Solution Ex8 BC322 : Computer Programming (ครั้งที่ 5)

+++ข้อสรุป+++ for, do, do..while สามารถใช้แทนกันได้ คำสั่งที่ต้องการทำซ้ำ; กำหนดค่าเริ่มต้น; while(เงื่อนไขที่เป็นจริง) { คำสั่งที่ต้องการทำซ้ำ; การเปลี่ยนแปลงค่า; } กำหนดค่าเริ่มต้น; do { คำสั่งที่ต้องการทำซ้ำ; การเปลี่ยนแปลงค่า; }while(เงื่อนไขที่เป็นจริง); BC322 : Computer Programming (ครั้งที่ 5)

การใช้งาน loop ในกรณีที่รู้จำนวนรอบ  for ,while,do..while BC322 : Computer Programming (ครั้งที่ 5)

ตัวอย่าง เปรียบเทียบ for, while Ex9 โปรแกรมแสดงคำว่า Hello 5 ครั้ง #include<stdio.h> void main() { for(i=1;i<=5;i++) printf(“Hello\n”); printf(“*******\n”); } #include<stdio.h> void main() { i=1; while(i<=5) printf(“Hello\n”); printf(“*******\n”); i=i+1; } BC322 : Computer Programming (ครั้งที่ 5)

Ex10 จงเขียนโปรแกรมเพื่อคำนวณอายุของเพื่อน 10 คน โดยจะต้องรับปี พ. ศ ตัวอย่างการรับค่าและแสดงผลทางหน้าจอ Enter Year1 : 2530 Student1 is 20 year’s old. * * * * * * * * * * * * * * * * * * * * Enter Year2 : 2532 Student1 is 18 year’s old. .... Enter Year10 : 2528 Student1 is 22 year’s old. เขียนโปรแกรม 2 ข้อ ใช้ for ใช้ while BC322 : Computer Programming (ครั้งที่ 5)

Solution Ex10 แบบ for BC322 : Computer Programming (ครั้งที่ 5)

Solution Ex10 แบบ while BC322 : Computer Programming (ครั้งที่ 5)

คราวหน้า Test เรื่อง while (ก่อนเรียน) BC322 : Computer Programming (ครั้งที่ 5)