Bu eğitimde, örnekler yardımıyla karar verme programları oluşturmak için if… else ifadesini öğreneceğiz.
Bilgisayar programlamada, if
bir blok kodunu yalnızca belirli bir koşul karşılandığında çalıştırmak için bu ifadeyi kullanırız.
Örneğin, bir öğrenci tarafından alınan notlara göre notların (A, B, C) verilmesi.
- yüzde 90'ın üzerindeyse , A notu verin
- yüzde 75'in üzerindeyse , B notu verin
- yüzde 65'in üzerindeyse , C notu verin
if… else
C ++ ' da üç ifade biçimi vardır .
if
Beyanif… else
Beyanif… else if… else
Beyan
C ++ if İfadesi
İfadenin sözdizimi if
şöyledir:
if (condition) ( // body of if statement )
if
İfadesi değerlendirir condition
içeride parantez ( )
.
- Olarak
condition
değerlendirilirsetrue
, gövdesi içindeki kodif
çalıştırılır. - Olarak
condition
değerlendirilirsefalse
, gövdesinin içindeki kodif
atlanır.
Not: İçerideki kod ( )
, if
ifadenin gövdesidir .

Örnek 1: C ++ if İfadesi
// Program to print positive number entered by the user // If the user enters a negative number, it is skipped #include using namespace std; int main() ( int number; cout <> 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; )
Çıkış 1
Bir tam sayı girin: 5 Pozitif bir sayı girdiniz: 5 Bu ifade her zaman yürütülür.
Kullanıcı girdiğinde 5
, koşul number> 0
olarak değerlendirilir true
ve gövdesi içindeki ifade if
çalıştırılır.
Çıkış 2
Bir sayı girin: -5 Bu ifade her zaman yürütülür.
Kullanıcı girdiğinde -5
, koşul number> 0
olarak değerlendirilir false
ve gövdesinin içindeki ifade if
çalıştırılmaz.
C ++ if… else
if
İfadesi isteğe bağlı olabilir else
maddesini. Sözdizimi şöyledir:
if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )
if… else
İfadesi değerlendirir condition
parantez içine.

Eğer condition
değerlendirir true
,
- gövdesinin içindeki kod
if
çalıştırılır - gövdesinin içindeki kod
else
yürütmeden atlandı
Eğer condition
değerlendirir false
,
- gövdesinin içindeki kod
else
çalıştırılır - gövdesinin içindeki kod
if
yürütmeden atlandı
Örnek 2: C ++ if… else İfadesi
// Program to check whether an integer is positive or negative // This program considers 0 as a positive number #include using namespace std; int main() ( int number; cout <> 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; )
Çıkış 1
Bir tam sayı girin: 4 Pozitif bir tam sayı girdiniz: 4. Bu satır her zaman yazdırılır.
Yukarıdaki programda şartımız var number>= 0
. 0'a eşit veya daha büyük bir sayı girersek, koşul değerlendirilir true
.
Buraya 4 giriyoruz. Yani, koşul true
. Bu nedenle, gövdesinin içindeki ifade if
çalıştırılır.
Çıkış 2
Bir tam sayı girin: -4 Negatif bir tam sayı girdiniz: -4. Bu satır her zaman yazdırılır.
Burada -4 giriyoruz. Yani, şart false
. Bu nedenle, gövdesinin içindeki ifade else
çalıştırılır.
C ++ if… else… else if ifadesi
if… else
İfadesi iki alternatifler arasında kod bloğu çalıştırmak için kullanılır. Bununla birlikte, ikiden fazla alternatif arasında bir seçim yapmamız gerekirse, if… else if… else
ifadeyi kullanırız .
İfadenin sözdizimi if… else if… else
şöyledir:
if (condition1) ( // code block 1 ) else if (condition2)( // code block 2 ) else ( // code block 3 )
Buraya,
- Eğer
condition1
değerlendirir içintrue
,code block 1
yürütülür. - Eğer
condition1
değerlendirir içinfalse
, daha sonracondition2
değerlendirilir. - Eğer
condition2
olduğutrue
,code block 2
yürütülür. - Eğer
condition2
olduğufalse
,code block 3
yürütülür.

Not: Birden fazla else if
ifade olabilir ancak yalnızca bir if
ve else
ifade olabilir.
Örnek 3: C ++ if… else… else if
// Program to check whether an integer is positive, negative or zero #include using namespace std; int main() ( int number; cout <> 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; )
Çıkış 1
Bir tam sayı girin: 1 Pozitif bir tam sayı girdiniz: 1. Bu satır her zaman yazdırılır.
Çıkış 2
Enter an integer: -2 You entered a negative integer: -2. This line is always printed.
Output 3
Enter an integer: 0 You entered 0. This line is always printed.
In this program, we take a number from the user. We then use the if… else if… else
ladder to check whether the number is positive, negative, or zero.
If the number is greater than 0
, the code inside the if
block is executed. If the number is less than 0
, the code inside the else if
block is executed. Otherwise, the code inside the else
block is executed.
C++ Nested if… else
Sometimes, we need to use an if
statement inside another if
statement. This is known as nested if
statement.
Think of it as multiple layers of if
statements. There is a first, outer if
statement, and inside it is another, inner if
statement. Its syntax is:
// outer if statement if (condition1) ( // statements // inner if statement if (condition2) ( // statements ) )
Notes:
- We can add
else
andelse if
statements to the innerif
statement as required. - The inner
if
statement can also be inserted inside the outerelse
orelse if
statements (if they exist). - We can nest multiple layers of
if
statements.
Example 4: C++ Nested if
// C++ program to find if an integer is even or odd or neither (0) // using nested if statements #include using namespace std; int main() ( int num; cout <> num; // outer if condition if (num != 0) ( // inner if condition if ((num % 2) == 0) ( cout << "The number is even." << endl; ) // inner else condition else ( cout << "The number is odd." << endl; ) ) // outer else condition else ( cout << "The number is 0 and it is neither even nor odd." << endl; ) cout << "This line is always printed." << endl; )
Output 1
Enter an integer: 34 The number is even. This line is always printed.
Output 2
Enter an integer: 35 The number is odd. This line is always printed.
Output 3
Enter an integer: 0 The number is 0 and it is neither even nor odd. This line is always printed.
In the above example,
- We take an integer as an input from the user and store it in the variable num.
- We then use an
if… else
statement to check whether num is not equal to0
.- If
true
, then the innerif… else
statement is executed. - If
false
, the code inside the outerelse
condition is executed, which prints "The number is 0 and neither even nor odd."
- If
- The inner
if… else
statement checks whether the input number is divisible by2
.- If
true
, then we print a statement saying that the number is even. - If
false
, we print that the number is odd.
- If
Notice that 0
is also divisible by 2
, but it is actually not an even number. This is why we first make sure that the input number is not 0
in the outer if
condition.
Note: As you can see, nested if… else
makes your logic complicated. If possible, you should always try to avoid nested if… else
.
Body of if… else With Only One Statement
If the body of if… else
has only one statement, you can omit ( )
in the program. For example, you can replace
int number = 5; if (number> 0) ( cout << "The number is positive." << endl; ) else ( cout << "The number is negative." << endl; )
with
int number = 5; if (number> 0) cout << "The number is positive." << endl; else cout << "The number is negative." << endl;
The output of both programs will be the same.
Note: Although it's not necessary to use ( )
if the body of if… else
has only one statement, using ( )
makes your code more readable.
More on Decision Making
Bazı durumlarda, üçlü operatör bir if… else
ifadenin yerini alabilir . Daha fazla bilgi edinmek için C ++ Ternary Operator'ü ziyaret edin.
Belirli bir test koşuluna göre birden fazla alternatif arasında seçim yapmamız gerekirse switch
, ifade kullanılabilir. Daha fazla bilgi edinmek için C ++ anahtarını ziyaret edin.
Daha fazla bilgi edinmek için şu örneklere göz atın:
Sayının Çift mi yoksa Tek mi Olduğunu Kontrol Etmek İçin C ++ Programı
Bir Karakterin Ünlü veya Ünsüz Olduğunu Kontrol Etmek İçin C ++ Programı.
Üç Sayı Arasındaki En Büyük Sayıyı Bulmak İçin C ++ Programı