ภาษาซี กับ โจทย์ Loop ในตำนาน (5) แสดงเลขคู่/คี่ ด้วย Loop do while ตั้ง 0 จนถึง 100

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
Aussadawut
PHP Hero Member
PHP Hero Member
โพสต์: 123
ลงทะเบียนเมื่อ: 15/11/2018 10:05 am

ภาษาซี กับ โจทย์ Loop ในตำนาน (5) แสดงเลขคู่/คี่ ด้วย Loop do while ตั้ง 0 จนถึง 100

โพสต์ที่ยังไม่ได้อ่าน โดย Aussadawut »

ภาษาซี กับ โจทย์ Loop ในตำนาน

สำหรับหลายๆคนที่เรียนมาแล้วหรือกำลังเรียนสายคอมพิวเตอร์ โปรแกรม จะต้องเจอกับโจทย์ Loop ชวนปวดหัวของอาจารย์อยู่เรื่อยๆ
นั่นก็เพราะว่า เราจะได้ฝึกให้มีความชำนาญในเรื่อง Loop และเข้าใจการทำงานของมันได้ง่ายขึ้นนั่นเอง

Loop คือ การทำงานวนซ้ำๆไปเรื่อยๆ จนกว่าจะถึงจุดที่เรากำหนดไว้

และโพสต์นี้เป็นโพสต์ที่ 5 แล้ว สำหรับ Loop ภาษาซีในตำนาน

โจทย์ : แสดงเลขคู่/คี่ ด้วย Loop do while ตั้ง 0 จนถึง 100
cdowhile246.png
cdowhile246.png (27.09 KiB) Viewed 10016 times

โค้ด: เลือกทั้งหมด

#include<stdio.h>
main(){
        int i=0;
        do{
                printf("%d ",i);
                i += 2;
        }while(i<=100);
}
ข้อควรจำ do while จะทำใน do ครั้งแรกก่อนเสมอนะ

บรรทัดที่ 3 กำหนดตัวแปร i = 0
บรรทัดที่ 4,5,6,7 Loop do while นี้ คือ ให้วน Loop ไปเรื่อยๆจนกว่าค่าของ i จะมีค่าเท่า 100 จากนั้น Loop จะหยุดลง สังเกตได้ใน Loop จะมี i += 2 เหมือนกับโพสต์ที่แล้วคือ ทุกครั้งที่วน Loop ค่าของ i จะเพิ่มครั้งละ 2 นั่นเอง แต่ในที่นี้ Loop do while จะทำใน do ก่อนเป็นครั้งแรกเสมอโดยไม่สนใจในเงื่อนไข ตามด้วยการวน Loop while

ยกตัวอย่างแบบเข้าใจง่ายๆ และคำพูดง่ายๆ

โค้ด: เลือกทั้งหมด

#include<stdio.h>
main(){
        int i=0;
        
        while(i<0){	// สั่งให้วน loop ถ้าค่า while น้อยกว่า 0
        	printf("%d",i);	// แสดงผลค่าของ i
        	i +=2 ;	// ค่า i เพิ่มขึ้น ครั้งละ 2
        }
        
        do{
                printf("1st run do");     	// แสดงผล 1st run do
                i += 2;				// ค่า i เพิ่มขึ้น ครั้งละ 2
        }while(i<0);				// สั่งในวน loop ถ้าค่า while น้อยกว่า 0
}

ผลลัพธ์
cdowhile.png
cdowhile.png (24.46 KiB) Viewed 10016 times
จะสังเกตได้ว่า Loop while จะไม่แสดงค่าใดๆออกมาเลย แต่ Loop do while จะแสดง 1st run do ออกมา

----------------------------------------------------------------------------------------------------------------------------------
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 43