ดูหน้านี้ใน รูปแบบเต็ม
tag: loop
รบกวนขอตัวอย่างโปรแกรมการกระทำวนซ้ำ ที่มีทั้ง for while และ do...while รวมถึงมีการใช้ฟังก์ชัน scanf และ switch case ด้วย
รบกวนหน่อยนะคะ
ขอบคุณล่วงหน้านะคะ
โดย BCL2008_Z001 เมื่อ 24 Dec 2551 15:05:53
#1 โดย PIrr เมื่อ 26 Dec 2551 15:50:16Ex. ตัวอย่างของ for
Code (C)
#include<stdio.h>
int main(){
int i,sum=0,N;
scanf("%d",&N);
for(i=1;i<=N;i++){
sum=sum+i; //หรือ sum+=i;
}
printf("%d",sum);
return(0);
}
โปรแกรม สำหรับ บวกค่าจำนวนนับ 1-N
อธิบาย ใน loop for ของโปรแกรมนี้
จะมีการรันค่า i ซึ่งเริ่ม i มีค่าเท่ากับ1 และเมื่อไรที่ i ยังคงน้อยกว่าหรือเท่ากับ N ก็ยังคงทำใน loop เรื่อยๆ คือทำคำสั่ง sum=sum+i;
รอบแรก เริ่ม i=1 sum=0; พอจบรอบ sum=1;
รอบสอง เริ่ม i=2 sum=1; พอจบรอบ sum=3; หรือ sum=(0+1)+2;
รอบสาม เริ่ม i=3 sum=3; พอจบรอบ sum=6; หรือ sum=((0+1)+2)+3;
ไปเรื่อยๆๆ N รอบ ดังนั้น sum= ผลรวมค่า i;
#2 โดย PIrr เมื่อ 26 Dec 2551 16:04:42Ex. ตัวอย่างของ while
Code (C)
#include<stdio.h>
int main(){
int i,sum=0,N;
scanf("%d",&N);
i=1;
while(i<=N){
sum=sum+i;
i++;
}
printf("%d",sum);
return(0);
}
เอาโปรแกรมเดิมน่ะ จะได้เอาไว้เปรียบเทียบ อิอิ
อธิบาย ใน loop while ของโปรแกรมนี้
จะเห็นว่ามีการกำหนดค่า i ไว้ นอก loop เพราะ ใน loop จะทำส่วนที่ซ้ำเท่านั้นการกำหนดค่าเป็นการทำเพียงครั้งแรกครั้งเดียวจึงต้อง ไว้นอก loopเมื่อไรก็ตามที่เงื่อนไขในวงเล็บถูกต้องก็จะทำใน loop เรื่อยๆดังนั้นผลลัพย์ออกมาจะเหมือนกับ โปรแกรมแรก
ปล. ใน while loop ถ้าเงื่อนไขแบบนี้จะต้องมี คำสั่งไว้เพิ่มค่าด้วยน่ะ ไม่งั้นจะกลายเป็น ลูป infinity ไม่จบ อิอิ
#3 โดย PIrr เมื่อ 26 Dec 2551 16:15:45นอกจากนี้ ยังสามารถไปประยุกต์ได้อีกมาก จึงเป็นคำลั่งพื้นฐานที่จำเป็นต้องรู้และเข้าใจ
Ex ตัวอย่างเงื่อนไขอื่นๆ
Code (C)
char check='T';
int N;
while(check=='T'){
scanf("%d",&N);
printf("%d",N);
if(N<0){
check='F';
}
}
ไม่อธิบายแล้วน่ะ อิอิ 555+ ถ้า code ผิดเล็กน้อยไม่ว่ากันน่ะ ไม่ได้ลองรันที
#4 โดย panjaporn เมื่อ 4 Jan 2552 21:50:42ขอบคุณนะคะ
#5 โดย nooduan eh oh~ เมื่อ 14 Jan 2552 18:45:27ขอบคุณด้วยคร่า
หุหุ เด่วจะเลี้ยงหนมวันหลังนะคะ
#6 โดย คนเหงาๆๆๆ เมื่อ 29 Aug 2553 21:27:39ขอตัวอย่างโปรแกรมการทำด้วย For, While ต้องการแสดงจำนวลตัวเลขคู่ที่อยู่ระหว่าเลข1-10 รีบๆให้หน่อยนะคับต้องการนำไปสอบนะช่วยด้วยนะคับก่อนวันที่ 1/9/53คับ ขอร้องนะผู้ที่รู้ช่วยหน่อยนะ
#7 โดย คนเหงาๆๆๆ เมื่อ 29 Aug 2553 21:30:02ขอผลลัพธืด้วยนะคับจะได้ไว้เปรียบเทียบนะช่วยด้ยนะ ผู้รู้
#8 โดย คนเหงาๆๆๆ เมื่อ 29 Aug 2553 21:32:18ขอบคุณล้วงหน้านะคับ
#9 โดย singlai เมื่อ 29 Aug 2553 22:51:13ตัวอย่างดค๊ตตัวอย่างการรับค่าผ่านพอร์ตอนุกรมเป็นจำนวนเต็มMCS51
ใช้incolde<ctype.h>
พิมพ์ตัวและตามด้วย*
int read_char_to_int (void)
{
int count=0;
int a=0;
int b=0;
int c[10]=0;
int x=0;
int pwm=0;
char data1;
for(a=0;a<10;a++) //set c=0
c[a]=0;
do
{
data1 = _getkey(); //recive char from uart0
if(isdigit(data1)) //check data='0'-'9' only for char to int
{
c[count]=atoi(&data1); //char to int
count++;
}
}while(data1!='*'); //check '*' for end loop
b=1;
for(x=1;x<count;x++)
b=b*10;
for(x=0;x<count;x++)
{
pwm=pwm+(c[x]*b); //calculate round
b=b/10;
}
return pwm;
}
#10 โดย หญิงโสด เมื่อ 31 Aug 2553 12:38:26ขอตัวอย่างโปรแกรมการทำด้วย For, While ต้องการแสดงจำนวลตัวเลขคู่ที่อยู่ระหว่าเลข1-10 รีบๆให้หน่อยนะต้องการนำไปสอบนะช่วยด้วยนะคะก่อนวันที่ 1/9/53คับ ขอร้องนะผู้ที่รู้ช่วยหน่อยนะ
รบกวนขอตัวอย่างโปรแกรมการกระทำวนซ้ำ ที่มีทั้ง for while และ do...while รวมถึงมีการใช้ฟังก์ชัน scanf และ switch case ด้วย
รบกวนหน่อยนะคะ
ขอบคุณล่วงหน้านะคะ