Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

Programiranje I

Bele ske za predavanja Smer Informatika Matemati cki fakultet, Beograd


Predrag Jani ci c i Filip Mari c 2011.

118

10 Nizovi i niske

int strcmp(char s1[], char s2[]) { /* Petlja tece sve dok ne naidjemo na prvi razliciti karakter */ int i; for (i = 0; s[i]==t[i]; i++) if (s[i] == \0) /* Naisli smo na kraj obe niske, a nismo nasli razliku */ return 0; /* s[i] i t[i] su prvi karakteri u kojima se niske razlikuju. Na osnovu njihovog odnosa, odredjuje se odnos stringova */ return s[i] - t[i]; }

Pitanja i zadaci za ve zbu


Zadatak 10.1. Napisati funkciju (i program koji je testira) koja: 1. proverava da li dati niz sadr zi dati broj; 2. pronalazi indeks prve pozicije na kojoj se u nizu nalazi dati broj (-1 ako niz ne sadr zi broj). 3. pronalazi indeks poslednje pozicije na kojoj se u nizu nalazi dati broj (-1 ako niz ne sadr zi broj). 4. izra cunava zbir svih elemenata datog niza brojeva; 5. izra cunava prosek (aritmeti cku sredinu) svih elemenata datog niza brojeva; 6. izra cunava najmanji element datog elemenata niza brojeva; 7. odreduje poziciju najve ceg elementa u nizu brojeva (u slu caju vi se pojavljivanja najve ceg elementa, vratiti najmanju poziciju); ce. 8. proverava da li je dati niz brojeva ureden neopadaju Zadatak 10.2. Napisati funkciju (i program koji je testira) koja: 1. izbacuje poslednji element niza; 2. izbacuje prvi element niza (napisati varijantu u kojoj je bitno o cuvanje redosleda elemenata i varijantu u kojoj nije bitno o cuvanje redosleda); 3. izbacuje element sa date pozicije k; 4. ubacuje element na kraj niza; 5. ubacuje element na po cetak niza; 6. ubacuje dati element x na datu poziciju k; 7. izbacuje sva pojavljivanja datog elementa x iz niza. Napomena: funkcija kao argument prima niz i broj njegovih trenutno popunjenih elemenata, a vra ca broj popunjenih elemenata nakon izvodenja zahtevane operacije.

10.4 Standardne funkcije za rad sa niskama Zadatak 10.3. Napisati funkciju (i program koji je testira) koja:

119

1. odreduje du zinu najdu ze serije jednakih uzastopnih elemenata u datom nizu brojeva; zinu najve ceg neopadaju ceg podniza datog niza celih brojeva; 2. odreduje du 3. odreduje da li se jedan niz javlja kao podniz uzastopnih elemenata drugog; 4. odreduje da li se jedan niza javlja kao podniz elemenata drugog (elementi ne moraju da budu uzastopni, ali se redosled pojavljivanja po stuje); 5. proverava da li je dati niz palindrom ( cita se isto sleva i zdesna); 6. obr ce dati niz brojeva; 7. rotira sve elemente datog niza brojeva za k pozicija ulevo; 8. rotira sve elemente datog niza brojeva za k pozicija udesno; 9. izbacuje vi sestruka pojavljivanja elemenata iz datog niza brojeva (napisati varijantu u kojoj se zadr zava prvo pojavljivanje i varijantu u kojoj se zadr zava poslednje pojavljivanje). 10. spaja dva niza brojeva koji su sortirani neopadaju ci u tre ci niz brojeva koji je sortiran neopadaju ci. Zadatak 10.4. Sa standardnog ulaza se unose dva niza brojeva. Napisati program koji odreduje njihov presek, uniju i razliku (redosled prikaza elemenata nije bitan, pri cemu se elementi ne ponavljaju). Zadatak 10.5. Napisati program koji ispisuje prvih n (najvi se 100000) elemenata niza koji se dobija tako sto se kre ce od 0, a zatim prethodni niz ponovi pri cemu se svaki broj uve ca za 1, tj. 0112122312232334... Zadatak 10.6. Napisati program koji razbija niz brojeva na najve ci mogu ci broj grupa uzastopnih elemenata. Na primer, niz 7 2 3 8 9 7 4 2 6 8 5 6 1 se deli na 7 2 4 8 9 7 4 2, 3, 6 8 5 6 i 1. Zadatak 10.7. Napisati program koji za uneti datum u obliku (dan, mesec, godina) odreduje koji je to po redu dan u godini. Proveriti i koretknost unetog datuma. U obzir uzeti i prestupne godine. Koristiti niz koji sadr zi broj dana za svaki mesec i uporediti sa re senjem zadatka bez kori s cenja nizova. Zadatak 10.8. Napisati funkciju koja proverava da li je data niska palindrom ( cita se isto sleva i zdesna), pri cemu se razmaci zanemaruju i ne pravi se razlika izmedu malih i velikih slova (npr. Ana voli Milovana je palindrom). Zadatak 10.9. ,,Eratostenovo sito za nala zenje svih prostih brojeva u nekom intervalu koristi postupak u kome se u nizu svih brojeva tog intervala prvo precrtaju svi parni brojevi, zatim svi brojevi deljivi sa 3, zatim svi deljivi sa 5 itd. Napisati program koji implementira Eratostenovo sito.

You might also like