ในบทก่อนหน้า คุณได้เรียนพื้นฐานของภาษา C++ ไปแล้ว ในบทนี้
คุณจะได้เรียนเกี่ยวกับการควบคุมโปรแกรมโดยการใช้คำสั่งควบคุม อย่างเช่น
if, if else, switch, for, while, do-while
คำสั่งเหล่านี้ใช้เพื่อควบคุมโปรแกรมเพื่อให้ไปในทิศทางที่เราต้องการ
คำ สั่ง If, if else, และ switch ถูกใช้เพื่อควบคุมโปรแกรมโดยมีเงื่อนไขเป็น expression คำสั่งวนซ้ำ เช่น for, while, และ do-while ถูกใช้เพื่อทำซ้ำส่วนของโค้ดตามเงื่อนไขของมัน
มากไปกว่านั้น expression สามารถมีได้หลายเงื่อนไข โดยการใช้ตัวดำเนินการตรรกะ
ในตัวอย่าง มันสามารถถูกเขียนโดยการใช้คำสั่ง if-else ได้ดังด้านล่างนี้
และนี่เป็นผลลัพธ์เมื่อรันโปรแกรม
ตัวอย่างการนับตัวเลขโดยการใช้ for loop
คำ สั่ง If, if else, และ switch ถูกใช้เพื่อควบคุมโปรแกรมโดยมีเงื่อนไขเป็น expression คำสั่งวนซ้ำ เช่น for, while, และ do-while ถูกใช้เพื่อทำซ้ำส่วนของโค้ดตามเงื่อนไขของมัน
คำสัง If
คำสั่ง if ถูกใช้เพื่อควบคุมโปรแกรมกับเงื่อนไขที่กำหนด โค้ดในบล็อคของ คำสั่ง If จะทำงานถ้าเงื่อนไขตรงหรือเป็นจริงint n = 10;
if (n == 10) {
cout << "n is 10";
}
ในตัวอย่างนี้ เราได้ใช้ if เพื่อตรวจสอบว่าตัวแปร n เท่ากับ 10 หรือไม่ ถ้ามันตรงกับเงื่อนไข โปรแกรมจะทำงานในบล็อคของ If คือ cout << "n is 10".คำสั่ง If else
คำ สั่ง If else นั้นคล้ายกับคำสั่ง if คำสั่ง Else เพื่อทำเงื่อนไขที่นอกเหลือจากเงื่อนไขอื่นทั้งหมด และมันจะต้องเริ่มต้นด้วยคำสั่ง if เสมอint m = -1;
if (n < 0) {
cout << "Negative number.";
}
else if (n > 0) {
cout << "Positive number.";
}
else {
cout << "Zero number";
}
ในตัวอย่าง คำสั่ง If สามารถมีเงื่อไนได้หลายอันดดยการใช้ if else () เงื่อนไขสุดท้ายคืแ else ซึ่งมันจะทำงานเมื่อไม่ตรงกับเงื่อนไขใดๆ ก่อนหน้า ในโค้ด เรามีตัวแปร m ซึ่งมีข้อมูลเป็นแบบ integer โปรแกรมของเรานั้นจะตรวจสอบว่า m เป็นจำนวนเต็มบวก เต็มลบ หรือศูนย์มากไปกว่านั้น expression สามารถมีได้หลายเงื่อนไข โดยการใช้ตัวดำเนินการตรรกะ
int a = 12;
int b = 5;
if (a > 10 && b % 2 == 0) {
cout << "a is greater than 10 and b is even number.";
}
else {
cout << "Other condition";
}
ในตัวอย่างนั้นใช้หลายเงื่อนไขและผลลัพธ์ของโปรแกรมจะเป็น "Other condition" เพราะว่า a นั้นมากกว่า 10 แต่ b นั้นไม่เป็นจำนวนคู่ คุณสามารถเพิ่มเงื่อนไขได้อีกตามที่คุณต้องการคำสั่ง Switch case
คำสั่ง switch-case นั้นคล้ายกับ คำสั่ง If-else เป้าหมายของมันเพื่อตรวจสอบกับค่าคงที่ นี่เป็นตัวอย่างการใช้คำสั่ง switchswitch (n) {
case 1:
cout << "n is 1";
break;
case 2:
cout << "n is 2";
break;
default:
cout << "Unknown n";
}
Switch expression สามารถมีได้แค่หนึ่งค่าเพื่อประเมิน คำสั่ง case เป็นคำสั่งเงื่อนไขเพื่อเปรียบเทียบค่า ในตัวอย่าง case 1: จะทำงานเมื่อ n มีค่าเท่ากับ 1 หลังจากคำสั่งด้านล่างเราต้องใส่คำสั่ง break เพื่อหยุดสำหรับแต่ละ case คำสั่ง default นั้นเป็นทางเลือกเมื่อโปรแกรมไม่ตรงกับเงื่อนไขใดๆ ก่อนหน้าในตัวอย่าง มันสามารถถูกเขียนโดยการใช้คำสั่ง if-else ได้ดังด้านล่างนี้
#include <iostream>
using namespace std;
int main ()
{
if (n == 1) {
cout << "n is 1";
}
else if (n == 2) {
cout << "n is 2";
}
else {
cout << "Unknown n";
}
return 0;
}
คำสั่ง while loop
ลูปที่ง่ายและพื้นฐานที่สุดในภาษา C++ นั้นคือ while loop ซึ่งมีรูปแบบการใช้งานคือwhile (expression) {
statements
}
คำ
สั่ง while-loop ใช้เพื่อทำสั่งโค้ดของโปรแกรมในขณะที่ expression เป็นจริง
true และมันจะสิ้นสุดการทำงานเมื่อ expression ไม่เท็จและออกจาก
while-loop และทำคำสั่งอื่นต่อไป#include <iostream>
using namespace std;
int main ()
{
int n = 1;
while (n <= 10) {
cout << n << ",";
n++;
}
cout << " end loop";
return 0;
}
ใน
ตัวอย่าง โปรแกรมจะนับจาก 1 ถึง 10 เราได้ประกาศตัวแปร n
และกำหนดค่าให้เป็น 1 ก่อนที่มันจะเข้าไปในทำงานใน while-loop while-loop
จะทำการตรวจสอบ expression และเข้าสู่ถ้าเงื่อนไขยังคงเป็นจริง; และแสดงค่า
n ออกทางจอภาพและเพิ่มค่า n ขึ้น 1 จนกว่า nจะเพิ่มไปถึง 10 ซึ่งจะทำให้
expression และโปรแกรมจะออกจาก loop และทำสั่งอื่นต่อไปและนี่เป็นผลลัพธ์เมื่อรันโปรแกรม
1,2,3,4,5,6,7,8,9,10, end loop
คำสั่ง do-while loop
ลูปที่คล้ายกับ while-loop คือ do-while ลูป มันมีรูปแบบดังนี้do {
statements
} while (condition);
มัน
ทำงานเหมือน while loop
ยกเว้นในการเปรียบเทียบเงื่อนไขจะทำตอนท้ายหลังจากสิ้นสุดคำสั่งในลูป
นั่นหมายความว่า do-while loop จะต้องทำงานอย่างน้อยหนึ่งรอบแน่นอน
มันมักจะใช้กับโปรแกรมที่จำเป็นต้องรับค่าจากผู้ใช้ก่อนที่จะทำอย่างอื่นต่อ
ไป มาดูตัวอย่างที่ง่ายๆ#include <iostream>
using namespace std;
int main ()
{
char ch;
do {
cout << "Enter 'n' to exit loop: ";
cin >> ch;
} while (ch != 'n');
cout << "Exit from the loop.";
return 0;
}
โปรแกรม
ข้างบนต้องการรับค่าจากผู้ใช้ expression ของมันต้องการตัวอักษร 'n'
character เพื่อออกจากลูป นี่คือผลลัพธ์ของโปรแกรมเมื่อได้ทดสอบ
คุณสามารถลองดูได้เช่นกันEnter 'n' to exit loop: a Enter 'n' to exit loop: b Enter 'n' to exit loop: c Enter 'n' to exit loop: n Exit from the loop.
คำสั่ง for loop
for loop เป็นลูปที่มีการวนรอบเป็นจำนวนที่แน่นอน รูปแบบของมันคือfor (initialize; condition; increase) {
statements
}
for
loop เป็นลูปที่สามารถวนรอบตามตัวเลขที่กำหนดได้ มันทำงานเหมือน
while-loop มันจะวนซ้ำจนกว่า expressionจะเป็นเท็จ นอกจากนั้น
เรายังสามารถประกาศตัวแปรเริ่มต้น สร้าง expression
เพิ่มและลดค่าก่อนที่ลูปจะเริ่มตัวอย่างการนับตัวเลขโดยการใช้ for loop
#include <iostream>
using namespace std;
int main ()
{
for (int n = 1; n <= 10; n++) {
cout << n << ",";
}
cout << " end loop";
return 0;
}
และนี่เป็นผลลัพธ์เมื่อเรารันโปรแกรม ซึ่งมันเป็นโปรแกรมเดียวกันกับตัวอย่างของ while-loop ก่อนหน้า1,2,3,4,5,6,7,8,9,10, end loop
คำสั่ง break
คำสั่ง break เพื่อจบลูปในทันที และมันไม่สนใจว่า expression จะเป็นจริงหรือไม่#include <iostream>
using namespace std;
int main ()
{
for (int n = 1; n <= 10; n++) {
if(n == 5) break;
cout << n << ",";
}
cout << " end loop";
return 0;
}
จากตัวอย่างข้างบน โปรแกรมจะออกจากลูปเมื่อ n มีค่าเท่ากับ 5 คำสั่ง break สามารถใช้กับลูป เช่น for, while, do-while, switch และอื่นๆ และผลลัพธ์การทำงานจะเป็นดังนี้1,2,3,4, end loop
คำสั่ง continue
ไม่เหมือนคำสั่ง break คำสั่ง continue ถูกใช้เพื่อข้ามการทำงานในรอบปัจจุบัน ซึ่งจะไม่ทำคำสั่งหลังจากมันและไปเริ่มรอบถัดไป#include <iostream>
using namespace std;
int main ()
{
for (int n = 1; n <= 10; n++) {
if(n % 2 == 0) continue;
cout << n << ",";
}
cout << " end loop";
return 0;
}
โปรแกรมจะข้ามลูปถ้า n เป็นตัวเลขคู่1, 3, 5, 7, 9, end loopใน บทนี้ เราได้ครอบคลุมเนื้อหาพื้นฐานของคำสั่งควบคุมโปรแกรม ซึ่งเป็นเครื่องมีที่มีประโยชน์เพื่อช่วยให้เราควบคุมโปรแกรมให้เป็นไปตาม ที่ต้องการได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น