View text
| Info | |
|---|---|
| Author | wiebren |
| Date added | 2002-08-30 |
| Last modified | 2005-01-01 |
Delphi les 2: 'if then else' en 'case of'
Inleiding
Deze les gaat over 'if then else' en 'case of' maar eerst een tukje over aantekenigen in de code.
Aantekengen
// dit is een geld tot het einde van de regel
{alles wat tussen deze haakjes staat is geen code}
{ blaat {dit kan niet} blaat}
{ dit wel // blaat }
// en dit ook {blaat}
If then else
Als er pas iets gedaan moet worden als een vergelijking waar (of onwaar) is dan kun je 'if then else' gebruiken, een voorbeeld:
if bedrag=100 then
showmessage('het bedrag is 100')
else
showmessage('het bedrag is geen 100');
Er moet nu pas helemaal op het eind een ';' komen omdat het maar 1 opdracht is (het zou dus ook op 1 regel kunnen). Je kunt ook alleen 'if then' gebruiken als de vergelijking dan onwaar is doet het programma niks. De variabele 'bedrag' word nu vergeleken met 100. De verschillende manieren van vergelijken zijn:
bedrag=100 bedrag is gelijk aan 100
bedrag<100 bedrag is kleiner dan 100
bedrag>100 bedrag is groter dan 100
bedrag>=100 bedrag is groter of gelijk an 100
bedrag<=100 bedrag is kleiner of gelijk aan 100
bedrag<>100 bedrag is ongelijk aan 100
Je kunt ook meerdre vergelijkingen kombineren:
if (bedrag<100) and (bedrag2>100) then …
if (bedrag<100) or (bedrag2>bedrag) then …
De verschilende vergelijkingen moeten nu tussen () staan.
Als er meerdere opdrachten moeten worden uitgevoerd kan dit zo:
if bedrag=100 then
begin
showmessage('het bedrag is 100');
edit1.text:='blaat';
end
else
begin
showmessage('het bedrag is geen 100');
edit1.text:='blaataap';
end;
Nu moeten er wel ';' komen te staan.
Case of
Als er bij elke waarde van een variabele iets anders moet gebeuren kun je 'case of' gebruiken, een voorbeeld:
case getal of
0: showmessage('het getal is 0');
1: begin
showmessage('het getal is 1');
edit1.text:=inttostr(getal);
end;
2,4,6: showmessage('het getal is 2 4 of 6');
7..100: showmessage('het getal kan 7 tot en met 100 zijn');
else showmessage('het getal is niet in de bovengenoemde reeksen'); // deze hoeft niet
end; // altijd afsluiten met een 'end'
wiebren