C # if, if ... else, if ... else if i ugniježđeno if Statement (s primjerima)

U ovom ćemo članku naučiti kako koristiti naredbu if, if … else, if … else if u C # za kontrolu tijeka izvršavanja našeg programa.

Testiranje stanja neizbježno je u programiranju. Često će se suočiti sa situacijama gdje moramo uvjetima testiranja (da li je trueili false) za kontrolu toka programa. Na ove uvjete može utjecati unos korisnika, faktor vremena, trenutno okruženje u kojem se program izvodi itd.

U ovom ćemo članku naučiti testirati uvjete pomoću naredbe if u C #.

Izjava C # ako (ako-tada)

Izjava C # if-then izvršit će blok koda ako je zadani uvjet istinit. Sintaksa naredbe if-then u C # je:

 if (boolean-expression) (// izrazi se izvršavaju ako je boolean-izraz tačno) 
  • Logički izraz vratit će ili true ili false.
  • Ako se logički izraz vrati true, (… )izvršit će se izrazi unutar tijela if (unutra ).
  • Ako se logički izraz vrati false, izrazi unutar tijela if bit će zanemareni.

Na primjer,

 if (broj <5) (broj + = 5;) 

U ovom primjeru izjava

 broj + = 5;

izvršit će se samo ako je vrijednost broja manja od 5.

Sjećate se operatora + =?

Kako ako izjava djeluje?

Primjer 1: Izjava 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."); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 2 je manje od 5 Ova se izjava uvijek izvršava.

Vrijednost broja inicijalizira se na 2. Dakle, izraz number < 5se procjenjuje na true. Stoga se izvršava kôd unutar bloka if. Kôd nakon naredbe if uvijek će se izvršiti bez obzira na izraz.

Sada promijenite vrijednost broja u nešto veće od 5recimo 10. Kada pokrenemo program, izlaz će biti:

 Ova se izjava uvijek izvršava.

Izraz number < 5će se vratiti false, dakle kôd iznutra ako se blok neće izvršiti.

C # if … else (if-then-else) Izjava

Izraz if u C # može imati neobavezni else izraz. Blok koda unutar naredbe else izvršit će se ako se izraz procijeni na false.

Sintaksa naredbe if … else u C # je:

 if (boolean-expression) (// izrazi izvršeni ako je boolean-izraz tačno) else (// izrazi izvršeni ako je boolean-izraz lažan) 

Na primjer,

 if (broj <5) (broj + = 5;) else (broj - = 5;) 

U ovom primjeru izjava

 broj + = 5;

izvršit će se samo ako je vrijednost broja manja od 5.

Izjava

 broj - = 5;

izvršit će se ako je vrijednost broja veća ili jednaka 5.

Kako ako… još Izjava uspije?

Primjer 2: Izjava 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."); ) ) ) 

Kada pokrenemo program, izlaz će biti:

 12 je veće ili jednako 5 Ova se izjava uvijek izvršava.

Ovdje se vrijednost broja inicijalizira u 12. Dakle, izraz number < 5se procjenjuje na false. Stoga se izvršava kôd unutar bloka else. Kôd nakon naredbe if … else uvijek će se izvršiti bez obzira na izraz.

Sada promijenite vrijednost broja u nešto manje od 5recimo 2. Kada pokrenemo program, izlaz će biti:

 2 je manje od 5 Ova se izjava uvijek izvršava.

Izraz number < 5će vratiti true, dakle kôd unutar ako će se blok izvršiti.

Ternarni operator u C # pruža prečac za C # if … else naredbu.

C # if … else if (if-then-else if) Izjava

Kada imamo samo jedan uvjet za testiranje, izjava if-then i if-then-else dobro funkcionira. Ali što ako imamo višestruki uvjet za testiranje i izvršavanje jednog od mnogih blokova koda.

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 (boolean-expression) (if (ugniježđeni izraz-1) (// kôd koji treba izvršiti) else (// kôd koji treba izvršiti)) else (if (ugniježđeni izraz-2) (// kôd koji treba izvršiti ) else (// kôd koji treba izvršiti)) 

Ugniježđene if izjave obično se koriste kada moramo testirati jedan uvjet nakon kojeg slijedi drugi. U ugniježđenom izrazu if, ako vanjski izraz if vrati true, on ulazi u tijelo da provjeri unutarnji izraz if.

Primjer 4: Ugnježđena izjava if … else

Sljedeći program izračunava najveći broj među 3 broja pomoću ugniježđene if … else naredbe.

 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); ) ) ) ) ) 

Kada pokrenemo program, izlaz će biti:

 13 je najveći

Zanimljivi članci...