2. osa C# Valikute konstruktsionid.

1. Mis on valik (otsustus)?

  • Valik võimaldab programmil käituda erinevalt sõltuvalt tingimusest.
  • Kasutatakse if-else või switch konstruktsioone.

2. If-Else konstruktsioon

Süntaks:

if (tingimus)
{
    // tegevus, kui tingimus tõene
}
else
{
    // tegevus, kui tingimus väär
}

Näide:

class Startclass
{
    public static void Main(string[] args)
    {
        Console.WriteLine("Tere tulemast!");
        string eesnimi = Console.ReadLine();
        Console.WriteLine("Tere, " + eesnimi);

        if (eesnimi.ToLower() == "juku")
        {
            Console.WriteLine("Tule minu juurde külla!");
        }
        else
        {
            Console.WriteLine("Täna mind kodus pole!");
        }

        int arv1 = int.Parse(Console.ReadLine());
        int arv2 = int.Parse(Console.ReadLine());
        Console.WriteLine("Arvude {0} ja {1} korrutis võrdub {2}", arv1, arv2, arv1 * arv2);
        Console.ReadLine();
    }
}

Märkus: .ToLower() muudab teksti väikesteks tähtedeks, et võrdlus oleks sõltumatu suur- ja väiketähtedest.


3. Switch konstruktsioon

  • Kasutatakse, kui on mitu võimalikku väärtust.
  • Iga case tähistab ühte võimalikku väärtust.
  • Lõpeb break käsuga, et väljumiseks.

Näide – Kuu nimetuse dekodeerimine:

public static string Kuu_nimetus(int kuu_nr)
{
    string kuu = "";
    switch (kuu_nr)
    {
        case 1: kuu = "Jaanuar"; break;
        case 2: kuu = "Veebruar"; break;
        case 3: kuu = "Märts"; break;
        case 4: kuu = "Aprill"; break;
        case 5: kuu = "Mai"; break;
        case 6: kuu = "Juuni"; break;
        case 7: kuu = "Juuli"; break;
        case 8: kuu = "August"; break;
        case 9: kuu = "September"; break;
        case 10: kuu = "Oktoober"; break;
        case 11: kuu = "November"; break;
        case 12: kuu = "Detsember"; break;
        default: kuu = "???"; break;
    }
    return kuu;
}


4. If-Else if konstruktsioon hooaja määramiseks

  • Võib kasutada loogilisi operaatorid:
    • && = ja
    • || = või

Näide – Hooaja määramine:

public static string Hooaeg(int kuu_nr) 
{
    string hoo = "";
    if (kuu_nr == 1 || kuu_nr == 2 || kuu_nr == 12)
    {
        hoo = "Talv";
    }
    else if (kuu_nr > 2 && kuu_nr < 6)
    {
        hoo = "Kevad";
    }
    else if (kuu_nr > 5 && kuu_nr < 9)
    {
        hoo = "Suvi";
    }
    else if (kuu_nr > 8 && kuu_nr < 12)
    {
        hoo = "Sügis";
    }
    else
    {
        hoo = "???";
    }
    return hoo;
}


5. Märksõnad ja näpunäited

  • if – kui tingimus on tõene.
  • else – kui tingimus väär.
  • else if – mitme tingimuse kontroll.
  • switch – mitme kindla väärtuse kontroll.
  • case – iga võimalik väärtus switch’is.
  • break – katkestab switch’i töö.
  • default – väärtus, kui ükski case ei klapi.
  • || – loogiline “või”, && – loogiline “ja”.