7.2.. Napisati program da provjeriti da li je upisani broj pozitivan, negativan ili nula i to ispiše.

Opis rješenja: Zadatak ima tri ispisa, međutim može se riješiti sa dvije IF naredbe budući da naredba IF THEN ELSE  sadrži dvije mogućnosti. Sa prvom se eliminiše jedno rješenje, a sa njenim ELSE dijelom se prelazi na odlučivanje o drugom i trećem rješenju. Izbor između ove druge dvije mogućnosti se izvodi sa novom (drugom) IF THEN ELSE naredbom.

Napomena: Jasno je da se zadatak može riješiti i sa tri IF THEN naredbe, ili sa dvije IF THEN naredbe koje koriste GOTO naredbu za skok na kraj.

Opis programa: Po upisu vrijednosti broja a izvodi se provjera da li je broj pozitivan. Ako je logički izraz (A>0) u IF naredbi istinit ispisuje se POZITIVAN. Inače se prelazi na dio naredbe ELSE unutar koje je druga IF naredba sa logičkim izrazom a<0. Ako je ovaj logički izraz istinit ispisuje se NEGATIVAN. Inače se ispisuje NULA. Ispred ELSE naredbe se nikad ne piše tačka zaraz (;) jer je to dio IF THEN ELSE naredbe.

Tabela 7.7. Provjera upisanog broja (pozitivan, negativan ili nula)

Tekstualni algoritam

Listing programa

Ekran

 

PROGRAM PP3_ 7;

 

 

VAR

 

 

  a : Real;

 

 

BEGIN

 

 

  Write('Vas broj ');

 

1. upis broja

  Readln(a);

Vas broj 3 

2. ako je a>0

  IF a > 0 THEN

 

2.1. tada ispiši POZITIVAN

    Writeln('POZITIVAN')

POZITIVAN 

inače

  ELSE

 

2.2., ako je a<0

    IF a < 0 THEN

 

2.2.1. tada ispiši  NEGATIVAN

      Writeln('NEGATIVAN')

 

 

    ELSE

 

2.2.2.  inače ispiši NULA

      Writeln('NULA');

 

 

END.

 

Drugo izvođenje programa
Vas broj -7
NEGATIVAN

Listing programa:

PROGRAM PP3_ 7;
USES
  WinCrt;
VAR
  a : Real;
BEGIN
  Write('Vas broj ');
  Readln(a);
  IF a > 0 THEN
    Writeln('POZITIVAN')
  ELSE
    IF a < 0 THEN
      Writeln('NEGATIVAN')
    ELSE
      Writeln('NULA');
  END.

Ispis na ekranu:

Index