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


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

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

Post Reply
User avatar
Aussadawut
PHP Hero Member
PHP Hero Member
Posts: 123
Joined: 15/11/2018 10:05 am

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

Post by Aussadawut » 17/11/2018 4:23 pm

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

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

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

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

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

Code: Select all

#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

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

Code: Select all

#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
}

ผลลัพธ์
ภาษาซี กับ โจทย์ Loop ในตำนาน (5) แสดงเลขคู่/คี่ ด้วย Loop do while ตั้ง 0 จนถึง 100 cdowhile.png
cdowhile.png (24.46 KiB) Viewed 3411 times
จะสังเกตได้ว่า Loop while จะไม่แสดงค่าใดๆออกมาเลย แต่ Loop do while จะแสดง 1st run do ออกมา

----------------------------------------------------------------------------------------------------------------------------------

Post Reply

Return to “Share Knowledge”

Users browsing this forum: No registered users and 15 guests