Else/fi
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
Varattu sanaelse aloittaa sellaisen ohjelman haaran
jossa kaikkia muita mainittuja tapauksia ei voida soveltaa. Se voi tapahtua
Semantiikka
Else-haara saa "ohjelmavirran", jos mitään muuta ehtoa ei ole täytetty.
Sitä ei voi yhdistää nimenomaiseen lausekeesen (expression),
vaan se riippuu toisissa paikoissa olevista lausekkeista, joten else:llä ei sinänsä ole ehtoa.
If … then … else-lauseessa, komennot suoritetaan seuraavasti:
if expression
then trueStatement
else falseStatement;
missä falseStatement suoritetaan jos expression antaa false arvon.
Case-lauseessa else-haara suoritetaan, jos mitään muuta case-kohtaa ei suoriteta.
case expression of
value0: action0;
value1: action1;
else action2;
end;
Vain jos expression ei kohdistu arvoihin value0 eikä value1, niin action2 suoritetaan.
Vertailevia huomautuksia
Pascal:ssa ei ole elsif tai elif.
Kuitenkin kirjoita else ja if taaksepäin ei ole ongelmaa.
Huomaa että toinen if … then muodostaa itsestään yhden lauseen.
Siksi else:n noudattamista koskeva vaatimus täyttyy.
if expression0 then
begin
action0;
end
else if expression1 then
begin
action1;
end;
Sisäkkäiset if … then … else
if … then … else ovat altis semanttisille virheille, jos ei käytetä
begin ja end kokoamaan lauseita.
if itIsMorning() then
if itIsAHoliday() then
begin
sleep;
end
else
begin
wakeUp;
dress;
brushTeeth;
…;
end
else
begin
…;
end;
Reference guide selittää (suurin piirtein näin)
Sisäkkäisissä
If.. then .. elserakenteissa voi syntyä jonkinlainen epäselvyys siitä, mikäifonelse:n parina. Sääntö on, ettäelseavainsanaa vastaa ensimmäistäifavainsanaa (haku taaksepäin) jotaelse-avainsana ei vielä vastaa.
Katso myös
Keywords: begin — do — else — end — for — if — repeat — then — until — while