You are on page 1of 10

Strukture podataka i

algoritamsko modelovanje
Pripreme za kolokvijum - Zadaci
Prof. dr Aleksandar Kostić
Zadatak 12
• Nacrtati algoritam koji vrši učitavanje niza celih brojeva
X, dužine N, i koji računa sumu elemenata tog niza
korišćenjem rekurzivnog potprograma SUMA_NIZA.
• Štampati dobijenu sumu.
Zadatak 12 - rešenje
Zadatak 13
• Dat je pseudo kod glavnog programa i pseudo kod funkcije FUN
koja je realizovana rekurzivno:

• Odrediti vrednost promenljive A nakon izvršavanja ovog koda.


Zadatak 13 - rešenje
• A=FUN(2,6)=?
• FUN(2,6) vraća 6*FUN(2,3)
• FUN(2,3) vraća 3*FUN(2,1)
• FUN(2,1) vraća 2+FUN(1,1)
• FUN(1,1) vraća 1*FUN(1,0)
• FUN(1,0) vraća 1+FUN(0,0)
• FUN(0,0) vraća 1
• Prema tome:
• A = FUN(2,6) = 6*FUN(2,3) = 6*3*FUN(2,1) = 6*3*(2+FUN(1,1)) = 6*3*(2+1*FUN(1,0)) =
• = 6*3*(2+1*(1+FUN(0,0))) = 6*3*(2+1*(1+1)) = 72
• Odgovor: A=72.
program

input x
if (x≥-5∧x≤5) then
y=1
else if x<5 then
y=x+2
else
y=x*x
end_if
end_if
output y
end
POČETAK

N: INTEGER
X: FLOAT

Izlaz za N=5 je 16
N

program
input N
x=(N-2)/5+3*N
x=(N-2)/5+3*N
NE if (x≥3∧N<7) then
x≥3 ∧ N<7

DA
x=x+1
end_if
x=x+1
output x
end
X

KRAJ
START

N, FACT:INTEGER

N
izlaz za N=5 je fact=120
program
FACT=1
input N
NE
fact=1
WHILE N≥1
while N ≥ 1 do
fact=fact*N
FACT=FACT*N
N=N-1
end_while
FACT
N=N-1
output fact
END
end
START

N
I, N, S: INTEGER
S=0
input N
I=1
S=0
I=1
WHILE I≤N
while I ≤ N do
if I - (I/2)*2 ≡ 0 then
(I - (I/2)*2)≡0
S=S+I
S end_if
S=S+I I=I+1
END end_while
I=I+1
output S
end
START

N,I,SUMA: INTEGER

N
program
input N
SUMA=0
suma=0
i=1
I=1

while i ≤ N do
WHILE I≤N if N-Ni*i≡0 then
suma=suma+i
(N - (N/I)*I)≡0
end_if
SUMA i=i+1
SUMA=SUMA+I
end_while
END
output suma
I=I+1
end

You might also like