Loading documents preview...
KONTROLNE STRUKTURE Dr Nenad Jovanovid FTN, 2010. godina
Osnovne kontrolne strukture Blokovi Selekcije Iteracije
Blokovi Niz komandi koje se izvršavaju 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 izračunava na slededi način: y = min(x,z) + 10 gede min(x,z) predstavlja funkciju koja upoređuje vrednosti promenljivih x i z i kao rezultat daje manju vrednost. Napisati program koji, za zadate vrednosti x i z izračunava vrednost funkcije y.
Zadatak Vrednost funkcije y se izračunava na slededi način: y = (min(x,z) +5)*max(x,z) gede min(x,z) predstavlja funkciju koja upoređuje vrednosti promenljivih x i z i kao rezultat daje manju vrednost, a max(x,z) predstavlja funkciju koja upoređuje vrednosti promenljivih x i z i kao rezultat daje vedu vrednost. Napisati program koji, za zadate vrednosti x i z izračunava 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 izračunava 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 važnosti 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); // GREŠKA } a = c++; // GREŠKA