Instrukcje warunkowe pascal


Instrukcje warunkowe, instrukcje wyboru

if-then-else

Najprostsza składnia to:

IF warunek (lub warunki, o tym niżej) THEN instrukcje

Jest to typ okrojony, pełna instrukcja warunkowa wygląda tak:

IF warunek (lub warunki, o tym niżej) THEN instrukcje ELSE instrukcje

Zobrazujmy to na przykładzie prostego programu:

program if_then_else;

var x: integer;

begin

write('Podaj jakas liczbe typu integer: ');

readln(X);

if(X>0) then writeln('Liczba wieksza od zera!') {gdy warunek X>0 jest prawdziwy}

else writeln('Wprowadzona liczba jest albo zerem, albo jest ujemna');

readln;

end.

I tu należy zrobić jeszcze jedną uwagę - należy pamiętać, że ostatnia instrukcja przed "else" nie może się kończyć średnikiem.

Może jeszcze dwa przykład na zagnieżdżenie instrukcji:

if wynik>= 50

then if wynik>= 60

then if wynik>= 70

then if wynik>= 80

then if wynik>=90

then ocena:= 5.0

else ocena:= 4.5

else ocena:= 4.0

else ocena:= 3.5

else ocena:= 3.0

else ocena:= 2.5

else ocena:= 2.0

program zagnieżdzone_instrukcje_IF;

var

sz: char;

ascii: integer;

begin

writeln('Podaj liczbę hex od A do F a ja Ci ją podam w ASCII');

readln(sz);

if (sz>= '0') and (sz <= '9')

then ascii:= Ord(sz) - Ord('0')

else if (sz>= 'a') and (sz <= 'f')

then ascii:= Ord(sz) - Ord('a') +10

else if (sz>= 'A') and (sz <= 'F')

then ascii:= Ord(sz) - Ord('A') +10

else writeln('To nie jest liczba hekasdecymalna...');

writeln('Wartość dziesiętna ',sz,' wynosi ',ascii);

readln; {czeka na nacisniecie klawisza enter, pozniej konczy program}

end.

if-then-else pozwala jednak na wykonanie tylko dwóch różnych instrukcji w zależnośCi od wartości (prawda, fałsz) badanego warunku. W Pascalu istniej jeszcze instrukcja CASE OF.

CASE OF

Spójrzmy zatem na problem z ocenianiem jeszcze raz:

CASE Wynik DIV 10 OF

10,9 : Ocena = 5.0 ;

8 : Ocena = 4.0;

7 : Ocena =4.0 ;

6 : Ocena = 3.5 ;

5 : Ocena =3.0 ;

0,1,2,3,4 Ocena = 2.0

END { prawda, ze o wiele szybsze i czytelniejsze? }

Pomówmy jeszcze o warunkach. Jeden IF może zbadać kilka warunków, używa się wtedy koniunkcji(AND), alternatywy(OR) bądź też negacji(NOT).

if (x>=0) AND (x<1) THEN writeln('Ten przedzial jest zbyt maly!')

ELSE oblicz(x);

Oczywiście można używać kilku AND, OR i NOT w jednym warunku - zależy to np.: od stopnia złożonośCi algorytmu.



Wyszukiwarka

Podobne podstrony:
05 Instrukcje warunkoweid 5533 ppt
[lekcja 13] Instrukcja warunkowa if else Kurs C++ » Poziom 1
instrukcje warunkowe
VBAmat2, INSTRUKCJA WARUNKOWA IF
Zadania instrukcja warunkowa
JAVA 07 instrukcje warunkowe
Instrukcje warunkowe
Instrukcje warunkowe
Lab 2 Instrukcje warunkowe
Instrukcja warunków higieniczno-sanitarnych [, BHP, Instrukcje-Sanitarne
Instrukcja warunkowa If zadania
Instrukcje warunkowe c
4 Instrukcje warunkowe (prezentacja)
Instrukcja warunkowa
Instrukcje warunkowe
Instrukcja złożona, wyrażenia, instrukcje warunkowe
Warunkowanie klasyczne i instrumentalne, Warunkowanie klasyczne to taki proces uczenia się, kiedy bo
Warunkowanie instrumentalne, Warunkowanie instrumentalne

więcej podobnych podstron