در این مقاله، ساختارهای مختلف شرط در C++ را بررسی می کنیم.
شرط if
if (testExpression)
{
// statements
}
دستور if شرط درون ( ) را بررسی می کند. اگر شرط درست باشد دستورات درون بدنه { }if اجرا می شوند و اگر اشتباه باشد دستورات درون بدنه را اجرا نمی کند.
شرط if چگونه کار می کند؟
تصویر سمت چپ برای درست بودن شرط و تصویر سمت راست برای نادرست بودن شرط است.
فلوچارت شرط if
تصاویر بالا روش اجرای دستور if را نشان می دهند.
مثال ۱ : شرط if در C++
// Program to print positive number entered by the user
// If user enters negative number, it is skipped
#include <iostream>
using namespace std;
int main()
{
int number;
cout << “Enter an integer: “;
cin >> number;
// checks if the number is positive
if ( number > 0)
{
cout << “You entered a positive integer: ” << number << endl;
}
cout << “This statement is always executed.”;
return 0;
}
خروجی ۱
Enter an integer: 5
You entered a positive number: 5
This statement is always executed.
خروجی ۲
Enter a number: -5
This statement is always executed.
شرط if….else در C++
در شرط if….else اگر شرط درست باشد کدهای درون بدنه if اجرا می شوند در غیر اینصورت کدهای درون بدنه else اجرا می شوند.
شرط if…else چکونه کار می کند؟
تصویر سمت چپ شرط درست و تصویر سمت راست شرط نادرست را نشان می دهد.
فلوچارت if…else
مثال ۲ : شرط if … else در C++
// Program to check whether an integer is positive or negative
// This program considers 0 as positive number
#include <iostream>
using namespace std;
int main()
{
int number;
cout << “Enter an integer: “;
cin >> number;
if ( number >= 0)
{
cout << “You entered a positive integer: ” << number << endl;
}
else
{
cout << “You entered a negative integer: ” << number << endl;
}
cout << “This line is always printed.”;
return 0;
}
خروجی
Enter an integer: -4
You entered a negative integer: -4.
This line is always printed.
شرط های تو در تو if … else در C++
دستور if…else با توجه به درستی یا نادرستی شرط دو کد متفاوت را اجرا می کند. گاهی می خواهیم از بین بیش از دو کد انتخاب کنیم.
دستور if…else تو در تو امکان بررسی چندین شرط را به ما می دهد.
ساختار if …. else تو در تو
if (testExpression1)
{
// statements to be executed if testExpression1 is true
}
else if(testExpression2)
{
// statements to be executed if testExpression1 is false and testExpression2 is true
}
else if (testExpression 3)
{
// statements to be executed if testExpression1 and testExpression2 is false and testExpression3 is true
}
.
.
else
{
// statements to be executed if all test expressions are false
}
مثال ۳ : شرط if … else تو در تو در C++
// Program to check whether an integer is positive, negative or zero
#include <iostream>
using namespace std;
int main()
{
int number;
cout << “Enter an integer: “;
cin >> number;
if ( number > 0)
{
cout << “You entered a positive integer: ” << number << endl;
}
else if (number < 0)
{
cout<<“You entered a negative integer: ” << number << endl;
}
else
{
cout << “You entered 0.” << endl;
}
cout << “This line is always printed.”;
return 0;
}
خروجی
Enter an integer: 0
You entered 0.
This line is always printed.
عملگر شرطی سه تایی ?:
عملگر شرطی سه تایی روی ۳ عملوند کار می کند و می تواند به جای به جای if … else استفاده شود. این کد را در نظر بگیرید:
if ( a < b ) {
a = b;
}
else {
a = -b;
}
می توانید کد زیر را جایگزین کد بالا کنید:
a = (a < b) ? b : -b;
عملگر شرطی سه تایی در شرط های کوتاه خوانا تر از if … else است.