C # if, if ... else, if ... else if і Nested if Statement (з прикладами)

У цій статті ми дізнаємося, як використовувати оператор if, if … else, if … else if у C # для управління потоком виконання нашої програми.

Тестування умови неминуче при програмуванні. Ми часто стикаємося з ситуаціями , коли нам потрібно умови випробувань (будь то trueабо false) для управління потоком програми. На ці умови може впливати введення користувача, фактор часу, поточне середовище, де працює програма тощо.

У цій статті ми навчимося тестувати умови, використовуючи оператор if у C #.

C # if (якщо-тоді) Заява

Оператор C # if-then виконає блок коду, якщо задана умова відповідає істині. Синтаксис оператора if-then у C #:

 if (boolean-expression) (// оператори виконуються, якщо boolean-expression є true) 
  • Булевий вираз поверне або true, або false.
  • Якщо логічне вираз повертається true, оператори всередині тіла if (inside (… )) будуть виконані.
  • Якщо логічне вираз повертається false, оператори всередині тіла if будуть проігноровані.

Наприклад,

 if (число <5) (число + = 5;) 

У цьому прикладі твердження

 число + = 5;

буде виконано лише в тому випадку, якщо значення числа менше 5.

Пам'ятаєте оператор + =?

Як якщо оператор працює?

Приклад 1: Заява C # if

 using System; namespace Conditional ( class IfStatement ( public static void Main(string() args) ( int number = 2; if (number < 5) ( Console.WriteLine("(0) is less than 5", number); ) Console.WriteLine("This statement is always executed."); ) ) ) 

Коли ми запускаємо програму, результат буде:

 2 менше 5 Це твердження виконується завжди.

Значення числа ініціалізується до 2. Тож вираз number < 5обчислюється як true. Отже, виконується код всередині блоку if. Код після оператора if завжди буде виконуватися незалежно від виразу.

Тепер змініть значення числа на щось більше, ніж 5, скажімо 10. Коли ми запускаємо програму, результат буде:

 Це твердження виконується завжди.

Вираз number < 5повернеться false, отже, код всередині, якщо блок не буде виконаний.

C # if … else (if-then-else) Заява

Оператор if у C # може мати необов'язковий оператор else. Блок коду всередині оператора else буде виконаний, якщо вираз оцінено як false.

Синтаксис оператора if … else у C #:

 if (boolean-expression) (// оператори виконуються, якщо boolean-expression є true) else (// оператори виконуються, якщо boolean-expression невірно) 

Наприклад,

 if (число <5) (число + = 5;) ще (число - = 5;) 

У цьому прикладі твердження

 число + = 5;

буде виконано, лише якщо значення числа менше ніж 5.

Заява

 число - = 5;

буде виконано, якщо значення числа більше або дорівнює 5.

Як якщо… ще Заява працює?

Приклад 2: Заява C # if … else

 using System; namespace Conditional ( class IfElseStatement ( public static void Main(string() args) ( int number = 12; if (number < 5) ( Console.WriteLine("(0) is less than 5", number); ) else ( Console.WriteLine("(0) is greater than or equal to 5", number); ) Console.WriteLine("This statement is always executed."); ) ) ) 

Коли ми запускаємо програму, результат буде:

 12 більше або дорівнює 5 Цей оператор завжди виконується.

Тут значення числа ініціалізується на 12. Отже, вираз number < 5оцінюється як false. Отже, виконується код всередині блоку else. Код після оператора if … else завжди буде виконуватися незалежно від виразу.

Тепер змініть значення числа на щось менше, ніж 5, скажімо 2. Коли ми запускаємо програму, результат буде:

 2 менше 5 Це твердження виконується завжди.

Вираз number < 5поверне true, отже, код всередині, якщо блок буде виконаний.

Тернарний оператор у C # надає ярлик для оператора C # if … else.

C # if … else if (if-then-else if) Заява

Коли у нас є лише одна умова для перевірки, твердження if-then та if-then-else чудово працює. Але що, якщо ми маємо кілька умов для тестування та виконання одного з багатьох блоків коду.

For such case, we can use if… else if statement in C#. The syntax for if… else if statement is:

 if (boolean-expression-1) ( // statements executed if boolean-expression-1 is true ) else if (boolean-expression-2) ( // statements executed if boolean-expression-2 is true ) else if (boolean-expression-3) ( // statements executed if boolean-expression-3 is true )… else ( // statements executed if all above expressions are false ) 

The if… else if statement is executed from the top to bottom. As soon as a test expression is true, the code inside of that if ( or else if ) block is executed. Then the control jumps out of the if… else if block.

If none of the expression is true, the code inside the else block is executed.

Alternatively, we can use switch statement in such condition.

Example 3: C# if… else if Statement

 using System; namespace Conditional ( class IfElseIfStatement ( public static void Main(string() args) ( int number = 12; if (number 5) ( Console.WriteLine("(0) is greater than 5", number); ) else ( Console.WriteLine("(0) is equal to 5"); ) ) ) ) 

When we run the program, the output will be:

 12 is greater than 5

The value of number is initialized to 12. The first test expression number < 5 is false, so the control will move to the else if block. The test expression number> 5 is true hence the block of code inside else if will be executed.

Similarly, we can change the value of number to alter the flow of execution.

Nested if… else Statement

An if… else statement can exist within another if… else statement. Such statements are called nested if… else statement.

The general structure of nested if… else statement is:

 if (булевий вираз) (if (вкладений вираз-1) (// код, який буде виконаний) else (// код, який буде виконаний)) else (якщо (вкладений вираз-2) (// код, який буде виконано ) else (// код для виконання)) 

Вкладені оператори if зазвичай використовуються, коли нам потрібно перевірити одну умову, а потім іншу. У вкладеному операторі if, якщо зовнішній оператор if повертає true, він надходить у тіло, щоб перевірити внутрішній оператор if.

Приклад 4: Вкладено заяву if … else

Наступна програма обчислює найбільше число серед 3 чисел за допомогою вкладеного оператора if … else.

 using System; namespace Conditional ( class Nested ( public static void Main(string() args) ( int first = 7, second = -23, third = 13; if (first> second) ( if (firstNumber> third) ( Console.WriteLine("(0) is the largest", first); ) else ( Console.WriteLine("(0) is the largest", third); ) ) else ( if (second> third) ( Console.WriteLine("(0) is the largest", second); ) else ( Console.WriteLine("(0) is the largest", third); ) ) ) ) ) 

Коли ми запускаємо програму, результат буде:

 13 - найбільший

Цікаві статті...