[ zoran_ets @ 22.06.2011. 11:55 ] @
zadatak je... 1)Šta ispisuje sledeći program na programskom jeziku Pascal? Code: program Zad(output); var a, b: integer; procedure p(var a: integer; c: integer); begin a := a + 1; b := b * 2; if b < 11 then p(a, c); b := b div 2; c := c - 1; write(output, a, b, c); a := a + 1 end; begin a := 5; b := 1; p(b, a) end. program treba da ispise 11114664334 ja sam ga ovako resavao a i b dobiju vrednosti 5 i 1,pozovem proceduru ,e sada a sam shvatio kao pokazivac,znaci vrednost na sta pokazuje a u glavnom programu a to je b se uveca za 1,pa je b sada u glavnom programu 2 i onda b=b*2 pa je b= 4pa pozovem proceduru ali sada mi a pokazuje na a u glavnom programu i tako vrtim... ce se ne menja sve dok ne ispadnem iz if petlje...e da i kad ispadnem zi petlje gde ce se program nastaviti da bi nastavio dalje ispisivanje... Code: program rekurzija(output); var a, b, c: integer; function f(var c, d: integer): integer; begin if c > 1 then begin a := a - 3; c := c - 4; f := f(a, c) + 3 end else if d < 5 then begin d := d - 3; c := c + 8; f := f(d, a) + 2 end else f := 1 end; begin a := 4; b := 7; c := 9; writeln(output, f(b, c)) end. e sada oved mi nije jasno f := f(a, c) + 3 znam da f(a,c) poziva funkciju ali ne znam sta ce tu biti povratna vrednost funkcije... 3)Koja od sledeće tri procedure na ispravan način u dvostruko ulančanu listu, iza elementa na koji pokazuje tek, ubacuje novi element na koji ukazuje pokazivač n? Pretpostaviti da tek nije nil i da element na koji ukazuje pokazivač n već postoji. Code: a) procedure u1(tek, n: ^elem); begin n^.sl := tek^.sl; n^.pr := tek; if tek^.sl <> nil then tek^.sl^.pr := n; n^.pr^.sl := n; end; b) procedure u2(tek, n: ^elem); begin n^.sl := tek^.sl; if tek^.sl <> nil then tek^.sl^.pr := n; n^.pr := tek^.sl^.pr; tek^.sl := n; end; c) procedure u3(tek, n: ^elem); begin tek^.sl := n; n^.sl := tek^.sl; n^.pr := tek; if tek^.sl <> nil then tek^.sl^.pr := n; end; e sada odgovor je pod a,ja sam to crtao ali nije mi jasno bas najbolje...(sliku 1) 4)Šta ispisuje sledeći program na programskom jeziku Pascal? Code: program presek(output); const max = 6; br = 10; type skup = set of 1..255; skupovi = array[1..max] of skup; var sk: skupovi; i: integer; begin for i := 1 to max do sk[i] := []; for i := 1 to br do sk[i mod max + 1] := sk[i mod max + 1] + [i]; for i := 1 to max do sk[i] := sk[i] + sk[i mod max + 1]; for i := 1 to br do if i in sk[1] then write(output, i); end. kod ovog zadatka mi nije jasno sta petlja for i:=1 to max,tacnije kolko je to max,da li je to ustvari 255 ili vec neki drugi broj ,zatim for i := 1 to br do koliko je br... koliko sam razumeo sk:=[] pravi prazan skup...i ako moze dodatno objasnjenje do kraja... resenje je 167... ![]() edit (savkic) Salji formatiran kod, mnogo je lakse videti o cemu se radi u kodu i kod pisi u okviru code tagova. [Ovu poruku je menjao savkic dana 22.06.2011. u 14:40 GMT+1] |