Naredbe grananja

1. Naredbe grananja

Naredbe grananja koristimo kada se program treba granati u jedan ili višesmjerova, ovisno o istinitosti danog uvjeta.
Primjerice, želimo li unositi ocjene učenika, najprije moramo provjeriti je li korisnik unio ocjenu (broj između 1 i 5) i u tom slučaju izvršiti određenu naredbu. Ako korisnik nije upisao broj iz tog intervala, potrebno je izvršiti neku drugu naredbu.

Zapis naredbe grananja u programskim jezicima Python i C izgleda ovako:

Python C
if uvjet:
    naredba1
else:
    naredba2   
 if (uvjet)
    naredba1;
 else
   naredba2;

a znači slijedeće:

ako je uvjet ispunjen onda izvrši
     naredbu 1
inače izvrši
     naredbu 2

Ovo je oblik naredbe koja se grana u dva smjera: naredba1 izvršit će se ako je zadani uvjet istinit, a naredba2 ako nije.

Uvjet je najčešće relacijski izraz, ali ponekad može biti i aritmetički.

Primjer 1: Provjerimo je li uneseni broj paran ili neparan.

Python C
a = int(input())
if a % 2 == 0:
    print('paran')
else:
   print('neparan')
   int a;
   scanf("%d", &a);
   if (a % 2 == 0)
      printf("paran);
   else
      printf("neparan")

Objašnjenje:
Ako je broj paran, ostatak pri dijeljenju s brojem 2 jednak je nuli.


Primjer 2: Provjerava je li uneseni broj pozitivan.

Python C
a = int(input())
if a > 0:
    print('uneseni broj je pozitivan!')
else:
    print('uneseni broj nije pozitivan!')  
  scanf("%d", &a);
  if (a > 0):
      printf("uneseni broj je pozitivan!");
  else
      printf('uneseni broj nije pozitivan!');

Primjer 3: Računa i ispisuje opseg kvadrata zadane duljine stranice. Ako je duljina stranice manja ili jednaka od nule, ispisuje poruku.
Python C
a = int(input())
if a>0:
    print(4*a)
else:
    print('Duljina stranice kvadrata mora biti veća od nule!')  
    scanf("%d", &a);
    if (a>0)
        printf("%d", 4*a)
    else
        printf('Duljina stranice kvadrata mora biti veća od nule!')