Pe lângă if, C# oferă instrucțiunea condițională if-else. Când am explicat declarația if, am spus că programul va executa instrucțiunile numai în cazul în care condiția if este adevărată. Dar dacă am dori ca programul să execute o instrucțiune total diferită atunci când și doar când această condiție este falsă?
Este adevărat, am putea scrie o altă declarație if, verificând dacă respectiva condiție returnează false și punând codul acolo, dar această metodă n-ar fi foarte elegantă. In schimb, putem folosi instrucțiunea condițională if-else:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
using
System;
namespace
BunaLume
{
class
Program
{
static void Main(string[] args)
{
int
varsta =
18;
if (varsta > 18)
Console.WriteLine("Sunt adult");
else
Console.WriteLine("Sunt inca minor");
Console.ReadLine();
}
}
}
|
În exemplul de mai sus, programul declară o variabilă de tip int, pe care o inițializăm cu valoarea 18. După aceea, verificăm dacă vârsta este mai mare sau egală cu 18, și afișăm un text în cazul în care condiția returnează true. Dacă returnează false, vom executa o instrucțiune total diferită, afișând un text diferit.
Desigur, ceea ce am spus despre declarația condițională if, se aplică și în cazul if-else: atunci când aveți mai mult de o singură instrucțiune după verificarea condițională, fie că este vorba de if sau else, plasați instrucțiunile într-un bloc de cod delimitat de acolade:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
using
System;
namespace
BunaLume
{
class
Program
{
static void Main(string[] args)
{
int
varsta =
18;
if (varsta > 18)
Console.WriteLine("Sunt adult");
else
{
Console.WriteLine("Sunt inca minor");
Console.WriteLine("Sunt adolescent");
}
Console.ReadLine();
}
}
}
|
Ultima formă a declarației if este if-else if-else. Putem folosi aceasta pentru a efectua două sau mai multe controale condiționale, cu o acțiune implicită în cazul în care niciunul dintre controale nu returnează true. Următorul exemplu ilustrează acest caz:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
using
System;
namespace
BunaLume
{
class
Program
{
static void Main(string[] args)
{
string
ziuaSaptamanii =
"Luni";
if (ziuaSaptamanii == "Luni")
Console.WriteLine("Astazi este Luni.");
else if (ziuaSaptamanii == "Marti")
Console.WriteLine("Astazi este Marti.");
else if (ziuaSaptamanii == "Miercuri")
Console.WriteLine("Astazi este Miercuri.");
else if (ziuaSaptamanii == "Joi")
Console.WriteLine("Astazi este Joi.");
else if (ziuaSaptamanii == "Vineri")
{
Console.WriteLine("Astazi este Vineri.");
Console.WriteLine("Weekend-ul incepe!");
}
else
{
Console.WriteLine("Weekend-ul a inceput!");
Console.WriteLine("Astazi nu mergem la munca");
}
Console.ReadLine();
}
}
}
|
Acesta este rezultatul:
Din exemplul de mai sus, se poate vedea că am verificat variabila noastră string față de toate zilele săptămânii lucrătoare, afișând diverse texte pentru fiecare scenariu, și un text implicit în cazul în care nici una dintre condiții nu returnează true.
Conceptele explicate în această lecție sunt prezentate și vizual, ca parte a următorului videoclip: