to aaa
;UCBLogo
;Zadatak s gradskog natjecanja u primorsko-goranskoj zupaniji 1999.
;
;TEXT ZADATKA (skracen):
;Napisati proceduru recenica koja trazi upis recenice
;u kojoj prebrojava samoglasnike i ispisuje njihov broj.
;Ako nema nekog ne ispisuje nista (nema informacije), a
;ako ih uopce nema ispisuje poruku o tomeu.
;
;Pozvati sa:
;-----------
;recenica
;-----------
;
;Moj komentar:
;Ovo se rjesenje razlikuje od rjesenja danog od sluzbenog sastavljaca
;jer ne koristimo niti globalne varijable niti mjenjanje vrijednosti
;varijable tipa:
; make "ime :ime+1
;
end
to broji :a :e :i :o :u :rij
if emptyp :rij [op (list :a :e :i :o :u)]
op broji (sum :a first vidi first :rij) ~
	(sum :e first bf vidi first :rij) ~
	(sum :i first bf bf vidi first :rij) ~
	(sum :o last bl vidi first :rij) ~
	(sum :u last vidi first :rij) ~
	bf :rij
end
to ispis :pod
pr [broj samoglasnika:]
if not ((first :pod)=0) [(pr [Slovo A =] first :pod)]
if not ((first bf :pod)=0) [(pr [Slovo E =] first bf :pod)]
if not ((first bf bf :pod)=0) [(pr [Slovo I =] first bf bf :pod)]
if not ((last bl :pod)=0) [(pr [Slovo O =] last bl :pod)]
if not ((last :pod)=0) [(pr [Slovo U =] last :pod)]
if (sum first :pod first bf :pod first bf bf :pod last bl :pod last :pod)=0 ~
	[pr [Nema samoglasnika!]]
end
to recenica
pr [Unesite recenicu!]
ispis broji 0 0 0 0 0 spoji rl " 
end
to spoji :rec :rij
if emptyp :rec [op :rij]
op spoji bf :rec word :rij first :rec
end
to vidi :slovo
if :slovo="a [op [1 0 0 0 0]]
if :slovo="e [op [0 1 0 0 0]]
if :slovo="i [op [0 0 1 0 0]]
if :slovo="o [op [0 0 0 1 0]]
if :slovo="u [op [0 0 0 0 1]]
op [0 0 0 0 0]
end