Zadaci iz programiranja


1. Dat je niz celih brojeva. Preurediti ga tako da nule ostanu na svom mestu, da negativni budu uredjeni u neopadajući, a pozitivni u nerastići niz. Pri tom, negativni brojevi treba da zadrže mesto negativnih, a pozitivni mesto pozitivnih.

2. Napisati program kojim se niz brojeva sažima tako što se svaka grupa uzastopnih nula zameni jednom nulom iza koje sledi broj elemenata u grupi. Zadatak rešiti bez korišćenja pomoćnog niza.

3. Neka niz x[n],x[n-1],...,x[0] predstavlja cifre broja n u brojnom sistemu sa osnovom b. Napisati program kojim se odredjuju cifre broj n+1 u sistemu sa osnovom b (brojeve nije dozvoljeno prevoditi u sisteme sa drugim osnovama).

4. Polinom P(x) je zadat nizom svojih koeficijenata a[0],a[1],...,a[n] (a[0] je koeficijent uz n-ti stepen promenljive x).
a) Izračunati (1-x[1])(1-x[2])...(1-x[n]) , gde su x[1],...,x[n] nule polinoma P(x).
b) Napisati f-ju kojom se za dato x izračunava P(x). Zadatak rešiti uz najvise n operacija sabiranja i n operacija množenja.
c) Odrediti koeficijente k-tog izvoda polinoma P(x).

5. Polinomi P(x) i Q(x) su zadati nizovima koeficijenata p[0],...,p[n] i q[0],...,q[m]. Napisati program za izračunavanje koeficijenata polinoma R(x)=P(x)*Q(x).

6. Napisati program za izračunavanje koeficijenata polinoma čije su nule date.

7. Napisati program koji ispisuje sve mogućnosti za isplatu novčanog iznosa od n novčanih jedinica sa ukupno m novčanica od 1, 3 i 5 novčanih jedinica. Npr. za n = 41, m = 9, rešenja su

2*3 + 7*5 i
1*1 + 8*5.

8. Električni sat pokazuje tekuće vreme u satima, minutima i sekundama. Ispisati sve momente vremena u toku jednog dana, takve da je zbir cifara na satu jednak broju n. Ispis treba da bude oblika :

0 sat 11 min 31 sec.

9. Niz 01121220122020012... se formira na sledeći način : prvo se piše 0, a zatim se ponavlja sledeći postupak : već napisani deo se dopisuje s desne strane, zamenjujući 0 sa 1, 1 sa 2 i 2 sa 0, tj.

0 ->01 -> 0112 -> 01121220 ->...

Napisati program kojim se za n <=1000 ispisuje n-ti član niza.

10. Napisati program koji odredjuje koje cifre i koliko puta se pojavljuju pri ispisu svih prirodnih brojeva u intervalu od N1 do N2 (uključujući i njih).

11. Dat je mnogougao nizom koordinata svojih temena (ne obavezno konveksan).

a) Napisati program koji odredjuje površinu mnogougla.

b) Ispitati da li tačka sa koordinatama (x,y) pripada mnogouglu.

c) Odrediti najdužu unutrašnju dijagonalu mnogougla.

Nazad