Wiki-kopiopeilipalvelin

Tämä on pascal.chatin wikin peilipalvelin. Muokkaus, historia ja kirjautuminen ovat siellä.

Else/fi

Deutsch · English · Español · Français · Suomi · Русский

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:

pascal
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.

pascal
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.

pascal
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.

pascal
if itIsMorning() then
    if itIsAHoliday() then
    begin
        sleep;
    end
    else
    begin
        wakeUp;
        dress;
        brushTeeth;
        ???;
    end
else
begin
    ???;
end;

Note: else edessä osana if … then … else-lausetta ei sallita puolipistettä (;).

Reference guide selittää (suurin piirtein näin)

Sisäkkäisissä If.. then .. else rakenteissa voi syntyä jonkinlainen epäselvyys siitä, mikä if on else:n parina. Sääntö on, että else avainsanaa vastaa ensimmäistä if avainsanaa (haku taaksepäin) jota else-avainsana ei vielä vastaa.

Katso myös


From the Free Pascal wiki, page "Else/fi", as it stood on 2022-08-06 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Versio 2, viimeksi muokannut WikiArchive .