You are on page 1of 20

KONTROLNE STRUKTURE

Dr Nenad Jovanovid FTN, 2010. godina

Osnovne kontrolne strukture


Blokovi Selekcije Iteracije

Blokovi
Niz komandi koje se izvravaju jedna za drugom

void testBlokIskaza() { int x = 10; { // Pocetak bloka int y = x + 10; ... } // Kraj bloka // y ovde ne postoji }

Selekcije
IF selekcija SWITCH selekciija

IF selekcija
if (uslov) { // blok A } else { // blok B }
uslov

blok A

blok B

If (x > MAX){ obavestenje = Suvise veliko; } else { obavestenje = null; }

Obavestenje = (X>MAX)? Suvise veliko : null

SWITCH selekcija
switch (selektorskaPromenljiva) { case vrednost1: // niz naredbi break; case vrednost 2: // niz naredbi break; . . . case vrednost n: // niz naredbi break; default: // niz naredbi }

Zadatak
Vrednost funkcije y se izraunava na slededi nain: y = min(x,z) + 10 gede min(x,z) predstavlja funkciju koja uporeuje vrednosti promenljivih x i z i kao rezultat daje manju vrednost. Napisati program koji, za zadate vrednosti x i z izraunava vrednost funkcije y.

Zadatak
Vrednost funkcije y se izraunava na slededi nain: y = (min(x,z) +5)*max(x,z) gede min(x,z) predstavlja funkciju koja uporeuje vrednosti promenljivih x i z i kao rezultat daje manju vrednost, a max(x,z) predstavlja funkciju koja uporeuje vrednosti promenljivih x i z i kao rezultat daje vedu vrednost. Napisati program koji, za zadate vrednosti x i z izraunava vrednost funkcije y.

Iteracije
FOR petlja WHILE petlja DO petlja

FOR petlja
for (inicijalizacija; test; inkrement) { // blok naredbi;

Primer: Echo

Zadatak
Napisati program koji za zadato n izraunava zbir kvadrata prvih n nenegativnih celih brojeva.

WHILE petlja
while (uslov) { // blok A }

blok A

uslov

DO petlja
do { // blok A } (uslov)

blok A

uslov

Naredbe break i continue

int i = 0; while (i < 100) { i++; System.out.println (" i = " + i); if (i == 10) break; }

int i = 0;

while (i < 10) { System.out.print (i); if (i++ % 2 == 0) continue; System.out.println(""); }

Oblast vanosti
int a = 1; for (int b=0; b<10; b++) {

int c = 1;
for (int d = 0; d<10; d++){ if (a < 5){ c = a+b*d; a++; } } System.out.println(a = +a); System.out.println(b = +b); System.out.println(c = +c); System.out.println(d = +d); // GREKA } a = c++; // GREKA

You might also like