Mis on tingimuslaused?
Tingimuslaused võimaldavad programmil otsuseid teha — täita erinevaid tegevusi sõltuvalt sellest, kas tingimus on tõene või väär. See on iga programmi loogika alus. Ilma tingimusteta teeks programm alati täpselt sama asja, sõltumata sisendist.
if-lause
Lihtsaim tingimus. Kui tingimus on tõene — täidetakse koodiplokk.
int vanus = 15;
if (vanus >= 18)
{
Console.WriteLine("Oled täiskasvanu.");
}
else
{
Console.WriteLine("Oled alaealine.");
}
if-else if-else lause
Kui tingimusi on mitu, kasutatakse else if-i. Programm kontrollib tingimusi järjest ja täidab esimese tõese ploki.
int hinne = 4;
if (hinne == 5)
{
Console.WriteLine("Suurepärane!");
}
else if (hinne == 4)
{
Console.WriteLine("Väga hea!");
}
else if (hinne == 3)
{
Console.WriteLine("Rahuldav.");
}
else if (hinne == 2)
{
Console.WriteLine("Läbitud miinimumiga.");
}
else
{
Console.WriteLine("Mittearvestatud.");
}
switch-lause
switch on mugav alternatiiv paljudele if-else if plokkidele, kui kontrollitakse ühe muutuja konkreetseid väärtusi. Iga case vastab ühele väärtusele. default täidetakse siis, kui ükski case ei vasta.
Console.Write("Sisesta nädalapäeva number (1-7): ");
int paev = int.Parse(Console.ReadLine());
switch (paev)
{
case 1:
Console.WriteLine("Esmaspäev");
break;
case 2:
Console.WriteLine("Teisipäev");
break;
case 3:
Console.WriteLine("Kolmapäev");
break;
case 4:
Console.WriteLine("Neljapäev");
break;
case 5:
Console.WriteLine("Reede");
break;
case 6:
Console.WriteLine("Laupäev");
break;
case 7:
Console.WriteLine("Pühapäev");
break;
default:
Console.WriteLine("Vale number! Sisesta 1 kuni 7.");
break;
}
Täielik koodinäide:
using System;
class Program
{
static void Main()
{
Console.OutputEncoding = System.Text.Encoding.UTF8;
// Piletikalkulaator — hind sõltub vanusest
Console.Write("Sisesta oma vanus: ");
int vanus = int.Parse(Console.ReadLine());
double piletihind;
if (vanus < 7)
{
piletihind = 0.0; // lapsed alla 7 — tasuta
Console.WriteLine("Pilet on TASUTA!");
}
else if (vanus <= 18)
{
piletihind = 3.50; // õpilashind
Console.WriteLine($"Õpilaspilet: {piletihind}€");
}
else if (vanus >= 65)
{
piletihind = 2.00; // pensionärihind
Console.WriteLine($"Pensionäripilet: {piletihind}€");
}
else
{
piletihind = 6.00; // täishind
Console.WriteLine($"Täiskasvanupilet: {piletihind}€");
}
// Kontrollime, kas isikul on allahindlus
bool onLiige = true;
if (onLiige && piletihind > 0)
{
double soodus = piletihind * 0.10;
Console.WriteLine($"Liikme allahindlus (-10%): -{soodus:F2}€");
Console.WriteLine($"Lõplik hind: {piletihind - soodus:F2}€");
}
}
}
Tulemus:
