Skip Navigation

Login





Join! | Login troubles?

Online members

Guests:1
Members:0

Poll

What's your main OS?


Windows (65.0%)

Linux (24.3%)

Mac OS X (9.1%)

*BSD (0.5%)

Something else (1.2%)


Total votes: 606
Date added: 2011-01-08

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