Подручја рада
Претрага
19. IFи IF-ELSE наредбе

Уводни део часа :
1. Које су одлике простих линијских структура ?
2. Како можемо решити проблем избора која ће се наредба извршавати ?
-------------------------------------------------------------------------------------------------------------------
Главни део часа :
Програми који садрже наредбе које омогућавају избор, односно гранање називају се програми са разгранатом линијском структуром.У PASCAL -у постоје две наредбе помоћу којих се реализује гранање у програму : if наредба и case наредба.


                                                                     IF НАРЕДБА


Ова наредба се користи при условном извршавању једне наредбе ( једноструки избор ) или при избору једне од две наредбе ( двоструки избор ). За једноструки избор користи се наредба чији синтаксни дијаграм има облик као на слици.


Ова наредба се извршава на следећи начин :


1. израчунава се вредност логичког израза ( true или false );
2. ако је вредност логичког израза true извршава се наредба, а ако је false наредба се не извршава. Затим се прелази на следећу наредбу програма, ако постоји. У алгоритмима се ова наредба приказује као на слици.

jednostruka_If_naredba.jpg

За двоструки избор користи се наредба if - then - else чији је синтаксни дијаграм као на слици :

Dvostruka_If_dijagram.jpg

Ова наредба се извршава на следећи начин:
1. Израчунава се вредност логичког израза;
2. Ако је вредност израза true, извршава се наредба иза службене речи then, а ако је вредност израза false извршава се наредба иза службене речи else. Затим се прелази на следећу наредбу програма ако постоји.


Двоструки избор се може приказати дијаграмом тока као на слици :

Dvostruka_If_algoritam.jpg

Испред службене речи else не пише се знак " ; ", што значи да је наредба if < логички израз > then  наредба ;else наредба ; нетачна.

Одговорити на питања :


1. Написати програм који израчунава и штампа максимум два броја;


2. Написати програм који испитује да ли задати број x испуњава услов :       min <      sqrt(abs(x))       < max;


3. Написати програм који испитује који је од три дата броја највећи;


4. Дата су два броја.Написати програм који ће позитивне бројеве дићи на квадрат, а негативне оставити неизмењеним;


5. Написати програм који три броја приказује у растућем поретку.