Naredbe ponavljanja
3. Ponavljanje koje ovisi o uvjetu
3.3. Zadatci s provedenih ispita
- (2010, ljetni rok, zadatak 26) Što će ispisati sljedeći dio programa?
    
 t := 0;
 n := 286;
 dok je n > 0 činiti
 {
 ako je n mod 2 > 0 onda
 t := t + 1;
 n = n div 2;
 }
 izlaz t;
 
- (2010, jesenski rok, zadatak 24) Što će ispisati sljedeći algoritam za n = 345?
    
 m := 0;
 dok je n <> 0 činiti
 {
 m := m * 10;
 k := n mod 10;
 m := m + k;
 n := n div 10
 }
 izlaz m;
 
 A. 0
 B. 5
 C. 345
 D. 543
- (2010, jesenski rok, zadatak 26) Što će ispisati sljedeći dio programa?
    
 x := 1001001;
 p := 1;
 d := 0;
 dok je x > 0 činiti
 {
 d := d + x mod 10 * p;
 x := x div 10;
 p := p * 2;
 }
 izlaz d;
- (2011, ljetni rok, zadatak 23) Koju će vrijednost imati varijabla t nakon izvođenja sljedećega dijela programa?
    
 x := 100;
 y := 200;
 t := 0;
 za i := x do y činiti
 {
 a := 0;
 b := i;
 dok je b > 0 činiti
 {
 a := a + (b MOD 10) * (b MOD 10) * (b MOD 10);
 b := b DIV 10;
 }
 ako je a = i onda
 t := t + 1;
 }
 
 A. 0
 B. 1
 C. 7
 D. 8
- (2011, ljetni rok, zadatak 26) Što će ispisati sljedeći dio programa?
    
 n := 415263;
 t := n;
 dok je n > 0 činiti
 {
 ako je (n MOD 10) >= 3 onda
 t := t + 1;
 n := n DIV 10;
 }
 izlaz (t);
 
- (2011, jesenski rok, zadatak 23) Koju
    će vrijednost imati varijabla t nakon izvođenja sljedećega dijela programa?
    
 x := 100;
 y := 200;
 t := 0;
 za i := x do y činiti
 {
 a := true;
 b := i;
 c := 9;
 dok je b > 0 činiti
 {
 ako je b MOD 10 > c onda
 a := false;
 c := b MOD 10;
 b := b DIV 10;
 }
 ako je a = true onda
 t := t + 1;
 }
 A. 0
 B. 28
 C. 45
 D. 98
- (2011, jesenski rok, zadatak 26) Što
    će ispisati sljedeći dio programa?
    
 n := 415263;
 dok je n > 0 činiti
 {
 t := n;
 ako je (n MOD 10) >= 3 onda
 t := t + 1;
 n := n DIV 10;
 }
 izlaz (t);
- (2012, ljetni rok, zadatak 32) Što će ispisati sljedeći dio programa?
    
 n := 290;
 m := 300;
 za i := n do m činiti
 {
 t := i;
 k := t mod 10;
 dok je t >= 10 činiti
 t := t div 10;
 ako je t + k = 9 onda
 izlaz (i);
 }
- (2012, jesenski rok, zadatak 18) Koji će brojevi biti ispisani nakon izvođenja sljedećeg programskog odsječka?
    
 m := 5;
 dok je m<10 činiti
 {
 m := m - 2;
 izlaz(m);
 }
 
 A. Bit će ispisan konačni niz brojeva: 5 7 9.
 B. Bit će ispisan beskonačni niz brojeva koji počinje brojevima: 5 3 1 –1…
 C. Bit će ispisan beskonačni niz brojeva koji počinje brojevima: 3 1 –1 –3...
 D. Bit će ispisan konačni niz brojeva: 3 5 7 9.
- (2012, jesenski rok, zadatak 32) Što će ispisati sljedeći dio programa?
    
 n := 160;
 m := 170;
 za i := n do m činiti
 {
 t := i;
 k := 0;
 dok je t > 0 činiti
 {
 k := k + t mod 10;
 t := t div 10;
 }
 ako je k mod 7 = 0 onda
 izlaz (i);
 }
 
- (2013, ljetni rok, zadatak 19) U kojem će se od navedenih algoritama varijabla x povećavati za jedan dok ne
    
 postigne deseterostruku početnu vrijednost varijable x?
 
 A. k := x;
 dok je x < 10 * k činiti
 x := x + 1;
 
 B. k := x;
 dok je x < 10 * x činiti
 x := x + 1;
 
 C. k := x;
 dok je x < 10 * k činiti
 x := k + 1;
 
 D. k := x;
 dok je x < 10 * x činiti
 k := k + 1;
- (2013, ljetni rok, zadatak 20) Koji će od navedenih algoritama ispisati najveću znamenku broja n?
    
 A.
 ulaz(n );
 max := n;
 dok je n > 0 činiti
 {
 ako je n mod 10 > max onda
 max := n mod 10;
 n := n div 10;
 }
 izlaz(max);
 
 B.
 ulaz(n );
 max := 0;
 dok je n > 0 činiti
 {
 z := n div 10;
 ako je z > max onda
 max := z;
 n := n div 10;
 }
 izlaz(max);
 C.
 ulaz(n );
 max := n;
 dok je n > 0 činiti
 {
 z := n div 10
 ako je z div 10 > max onda
 max := z;
 n := n mod 10;
 }
 izlaz(max);
 
 D.
 ulaz(n );
 max := 0;
 dok je n > 0 činiti
 {
 ako je n mod 10 > max onda
 max := n mod 10;
 n := n div 10;
 }
 izlaz(max);
- (2013, ljetni rok, zadatak 33) Koju će vrijednost ispisati sljedeći dio programa ako se za n upisuje vrijednost 2 i
    
 zatim n različitih prirodnih brojeva k: 19283 i 819?
 ulaz(n );
 t := 0;
 za i := 1 do n činiti
 {
 ulaz(k);
 p := k;
 r := 0;
 dok je k > 0 činiti
 {
 k := k div 10;
 r := r + 1;
 }
 ako je r > t onda
 {
 izlaz(p);
 t := r;
 }
 }
 
 
- (2013, jesenski rok, zadatak 19) U kojem će se od navedenih algoritama varijabla x pri svakome ponavljanju petlje učetverostručiti dok ne postane veća od 210?
    
 
 A. x := 2;
 dok je x > 1024 činiti
 x := x + 4;
 
 B. x := 2;
 dok je x <= 1024 činiti
 x := x + 4;
 
 C. x := 2;
 dok je x <= 32 * 32 činiti
 x := x * 4;
 
 D. x := 2;
 dok je x > 32 * 32 činiti
 x := x * 4;
- (2013, jesenski rok, zadatak 20) Koji će od navedenih algoritama računati dekadski zapis binarnoga broja b?
    
 A.
 ulaz(b);
 d := 0;
 p := 1;
 dok je b > 0 činiti
 {
 d := d * p + b mod 10;
 b := b div 10;
 p := p * 2;
 }
 izlaz(d);
 
 B.
 ulaz(b);
 d := 0;
 p := 1;
 dok je b > 0 činiti
 {
 d := d + (b mod 2) * p;
 b := b div 2;
 p := p * 10;
 }
 izlaz(d);
 
 C.
 ulaz(b);
 d := 0;
 p := 1;
 dok je b > 0 činiti
 {
 d := d + (b mod 10) * p;
 b := b div 10;
 p := p * 2;
 }
 izlaz(d);
 D.
 ulaz(b);
 d := 0;
 p := 1;
 dok je b > 0 činiti
 {
 d := d * p + b mod 10;
 b := b div 2;
 p := p * 2;
 }
 izlaz(d);
- (2013, jesenski rok, zadatak 33) Koju će vrijednost ispisati sljedeći dio programa ako se za n upisuje vrijednost 2 i zatim n
    
 različitih prirodnih brojeva k: 918 i 1111?
 ulaz (n );
 t := 0;
 za i := 1 do n činiti
 {
 ulaz(k);
 r := 0;
 dok je k > 0 činiti
 {
 r := r + k mod 10;
 k := k div 10;
 }
 ako je r > t onda
 {
 izlaz (r);
 t := r;
 }
 }
 
- (2014, ljetni rok, zadatak 32) Što
    će ispisati sljedeći dio programa?
    
 a := 10;
 t := 0;
 dok je a < 100 činiti
 {
 ako je sqrt(a) = round(sqrt(a)) onda
 t := a;
 a := a + 2;
 }
 izlaz (t)
- (2014, ljetni rok, zadatak 33) Što
    će ispisati sljedeći dio programa?
    
 t := 0;
 za i := 90 do 105 činiti
 {
 k := i;
 dok je k > 0 činiti
 {
 t := t + 1;
 k := k div 10;
 }
 }
 izlaz (t);
- (2014, jesenski rok, zadatak 32) Što će ispisati sljedeći dio programa?
    
 a := 10;
 t := 0;
 dok je a < 100 činiti
 {
 ako je a div 10 <= a mod 10 onda
 t := a;
 a := a + 2;
 }
 izlaz (t);
- (2014, jesenski rok, zadatak 33) Što će ispisati sljedeći dio programa ako je a = 7835?
    
 t := 0;
 dok je a > 0 činiti
 {
 k := a;
 a := a div 10;
 s := 0;
 dok je k > 0 činiti
 {
 s := s + k mod 10;
 k := k div 10;
 }
 ako je s mod 2 = 0 onda
 t := t + 1;
 }
 izlaz (t);
 
- (2015, ljetni rok, zadatak 19) U kojemu će se od sljedećih algoritama varijabla x smanjivati za tri dok ne postane manja od 20?
    
 
 A. x := 100;
 dok je x <= 20 činiti
 x := x - 3;
 
 B. x := 100;
 dok je x >= 20 činiti
 x := x - 3;
 
 C. x := 20;
 dok je x <= 100 činiti
 x := x - 3;
 
 D. x := 20;
 dok je x > 100 činiti
 x := x - 3;
- (2015, ljetni rok, zadatak 20) Koji će od sljedećih algoritama ispisati binarni zapis dekadskoga prirodnog broja n?
    
 
 A.
 ulaz ( n);
 b := 0;
 p := 1;
 dok je n > 0 činiti
 {
 b := b + (n mod 10) * p;
 n := n div 2;
 p := p * 2;
 }
 izlaz (b);
 
 B.
 ulaz (n );
 b := 0;
 p := 1;
 dok je n > 0 činiti
 {
 b := b * p + n mod 2;
 n := n div 2;
 p := p * 2;
 }
 izlaz (b);
 
 C.
 ulaz (n );
 b := 0;
 p := 1;
 dok je n > 0 činiti
 {
 b := b + (n mod 2) * p;
 n := n div 2;
 p := p * 10;
 }
 izlaz (b);
 
 D.
 ulaz (n );
 b := 1;
 p := 1;
 dok je n > 0 činiti
 {
 b := b * 10 + n mod 2;
 n := n div 2;
 p := p * 10;
 }
 izlaz (b);
- (2015, ljetni rok, zadatak 33) Koju će vrijednost ispisati sljedeći dio programa ako se za n upisuje vrijednost 2 i zatim n različitih prirodnih brojeva k: 1811 i 7?
    
 ulaz (n );
 t := 0;
 za i := 1 do n činiti
 {
 ulaz(k);
 p := k;
 r := 1;
 dok je k > 0 činiti
 {
 r := k mod 10 * r;
 k := k div 10;
 }
 ako je r > t onda
 {
 izlaz (p);
 t := r;
 }
 }
- (2015, jesenski rok, zadatak 19) U kojemu će se od sljedećih algoritama varijabla x pri svakome ponavljanju petlje povećavati dva puta dok ne postigne osmerostruku početnu vrijednost varijable x?
    
 
 A. k := x;
 dok je x < 8 * k činiti
 x := x + 2;
 
 B. k := x;
 dok je x < 8 * x činiti
 x := x * 2;
 C. k := x;
 dok je x < 8 * k činiti
 x := x * 2;
 D. k := x;
 dok je x < 8 * x činiti
 k := k + 2;
- (2015, jesenski rok, zadatak 20) Koji će od sljedećih algoritama ispisati najmanju znamenku prirodnoga broja n?
    
 
 A.
 ulaz ( n);
 min := n mod 10;
 dok je n > 0 činiti
 {
 ako je n mod 10 < min onda
 min := n mod 10;
 n := n div 10;
 }
 izlaz (min);
 
 B.
 ulaz ( n);
 min := 0;
 dok je n > 0 činiti
 {
 z := n div 10;
 ako je z < min onda
 min := z;
 n := n div 10;
 }
 izlaz (min);
 
 C.
 ulaz ( n);
 min := n;
 dok je n > 0 činiti
 {
 z := n div 10;
 ako je z div 10 < min onda
 min := z;
 n := n mod 10;
 }
 izlaz (min);
 
 D.
 ulaz ( n);
 min := 0;
 dok je n > 0 činiti
 {
 ako je n mod 10 < min onda
 min := n mod 10;
 n := n div 10;
 }
 izlaz (min);
- (2015, jesenski rok, zadatak 33) Koju će vrijednost ispisati sljedeći dio programa ako se za n upisuje vrijednost 2 i zatim n različitih prirodnih brojeva k: 38 i 1123?
    
 
 ulaz ( n);
 t := 0;
 za i := 1 do n činiti
 {
 ulaz (k);
 p := k;
 r := 0;
 dok je k > 0 činiti
 {
 r := r + k mod 10;
 k := k div 10;
 }
 ako je r > t onda
 {
 izlaz (p);
 t := r;
 }
 }
- (2016., ljetni rok, zadatak 20) Koju je naredbu potrebno upisati na crtu u sljedećemu dijelu programa da bi nakon njegova izvođenja u varijabli s bio zapisan broj znamenaka broja n?
 ulaz ( n);
 s := 0;
 dok je n > 0 činiti
 {
 __________________
 n := n div 10;
 }
 A. s := s + 1;
 B. s := s + n;
 C. s := s + n mod 10;
 D. s := s + n div 10;
- (2016., ljetni rok, zadatak 32) Što će ispisati sljedeći dio programa ako se za n učita vrijednost 25387?
 ulaz ( n);
 k := 0;
 dok je n > 0 činiti
 {
 ako je n mod 2 = 0 onda
 k := k + 1;
 n := n div 10;
 }
 izlaz (k);
- (2016., ljetni rok, zadatak 33) Što će ispisati sljedeći dio programa?
 t := 0;
 za i := 200 do 300 činiti
 {
 n := i;
 k := n mod 10;
 dok je n > 9 činiti
 n := n div 10;
 ako je (k + n) mod 2 = 0 onda
 t := t + 1;
 }
 izlaz ( t);