In een programma moet je net als in het echte leven vaak keuzes maken. Je
stelt een vraag en afhankelijk van het antwoord volg je een bepaald pad. Denk
aan: “Als het regent, dan heb ik een regenjas nodig, anders heb ik er geen
nodig.” De vraag bevat altijd een voorwaarde (“het regent”). Het resultaat
van die voorwaarde kan maar twee waarden hebben: ze is waar (true) of
niet waar (false).
Zo’n keuze maak je in C# met het if-statement. Afhankelijk van het
resultaat van de voorwaarde voert de computer de ene of de andere groep
instructies uit.
Een if-statement heeft de volgende vorm:
if (voorwaarde)
{
// instructies wanneer de voorwaarde waar is
}
else
{
// instructies wanneer de voorwaarde niet waar is
}
Na het woord if staat tussen ronde haakjes de voorwaarde. Is die waar,
dan voert het programma de instructies tussen de eerste accolades { } uit. Is
de voorwaarde niet waar, dan voert het programma de instructies in het
else-deel uit.
Schematisch ziet die keuze er zo uit:
Het
else-deel is optioneel. Heb je niets te doen wanneer de voorwaarde niet waar is, dan laat je het gewoon weg en schrijf je enkel hetif-deel.
Een webwinkel geeft een hogere korting aan wie voor een groot bedrag bestelt. Wie minder dan 500 euro besteedt, krijgt 4% korting; wie 500 euro of meer besteedt, krijgt 7% korting.
Console.Write("Geef het bestelbedrag: ");
int totaal = Convert.ToInt32(Console.ReadLine());
int korting;
if (totaal < 500)
{
korting = 4;
}
else
{
korting = 7;
}
Console.WriteLine("De korting bedraagt " + korting + "%");
De voorwaarde is hier totaal < 500. Is dat het geval, dan krijgt de variabele
korting de waarde 4; in het andere geval krijgt ze de waarde 7. Pas nadat
de keuze gemaakt is, toont het programma de gekozen korting.
De instructies binnen een
ifof eenelsestaan ingesprongen tussen accolades. Dat is niet alleen netjes: de accolades bepalen welke instructies bij welk pad horen.