Professional Documents
Culture Documents
Domaca Zadaca 2
Domaca Zadaca 2
2. Napišite program koji prvo traži da se sa tastature unese rečenica, a zatim ispisuje svaku riječ te
rečenice u posebnom redu, kao i informaciju koliko ta rečenica ima slova (ne računajući
interpunkcijske znakove) i riječi. Obratite pažnju da riječi rečenice mogu biti razdvojene sa više
od jednog razmaka, kao i da se na samom početku i na samom kraju rečenice mogu također
nalaziti razmaci. Za realizaciju koristite tip “string” i odgovarajuće manipulacije sa
stringovima.
3. Napišite funkciju “DaLiJePalindrom” koja za string koji joj je proslijeđen kao parametar
ispituje da li je palindrom ili nije, i kao rezultat vraća odgovarajuću logičku vrijednost “true” ili
“false”. Pod palindromima smatramo riječi ili rečenice koje se isto čitaju sa obe strane (npr.
“kapak”). Prilikom ispitivanja treba ignorirati eventualne razmake, interpunkcijske znake i
razliku između velikih i malih slova, tako da rečenica “Ana voli Milovana” treba da bude
prepoznata kao palindrom, iako bukvalno pročitana sa suprotnog kraja glasi “anavoliM ilov
Ana”. Još neki od poznatih palindromnih rečenica su “Udovica baci vodu”, “E, sine, ženi se”, “I
jogurt ujutru goji”, “I Dara za mast sama zaradi”, “Jovi limaru gumu gura Milivoj”, itd.
Historijski najpoznatiji palindrom je latinska rečenica “Sator Arepo tenet opera rotas” za koju se
u srednjem vijeku smatralo da ima magična svojstva. Napišite i kratki testni program (“main”
funkciju) u kojem ćete testirati napisanu funkciju.
4. Napisati program koji traži od korisnika da unese spisak riječi (broj riječi se prethodno unosi sa
tastature), a zatim ispisuje na ekran prvu i poslednju riječ iz spiska po abecednom poretku, kao i
popis svih unesenih riječi, ali bez ispisivanja duplikata (tj. bez ispisivanja riječi koje su se već
jednom ispisale). Program realizirati korištenjem vektora stringova, odnosno vektora čiji su
elementi tipa “string”.
Napomena:
Moguća rješenja zadataka za zadaću biće publikovana naknadno, nakon isteka roka za predaju zadaće.