Laki:
1) Napisati program koji utvrdjuje koliko se puta data rec pojavljuje u 
datoj tekstualnoj datoteci. Putanja do datoteke kao i rec se zadaju na
komandnoj liniji.
2) Na komandnoj liniji se zadaje najpre opcija -r  ("rastuce") ili -o 
("opadajuce") a zatim i niz celih brojeva. Program ispisuje dati niz 
sortiran u zahtevanom poretku.
3) U datoteci se nalaze informacije o proizvodima u nekom magacinu. 
Datoteka je u sledecem formatu:

<broj_proizvoda (n)>
<pr_1>  <cena_1>  <kolicina_1>
<pr_2>  <cena_2>  <kolicina_2>
...
<pr_n>  <cena_n>  <kolicina_n>

Napisati program koji odredjuje ukupnu vrednost svih proizvoda u magacinu,
kao i pojedinacni proizvod cija je zbirna cena (cena * kolicina) najveca.
Ime datoteke se zadaje na komandnoj liniji.

Teski:
1) Napisati program koji:
   a) definise apstraktni tip KompleksniBroj, a zatim i funkcije za rad
      sa ovakvim brojevima (zbir, razlika, proizvod, kolicnik, moduo, 
      argument, konjugacija).
   b) racuna vrednost izraza koji je dat u datoteci cije se ime zadaje sa
      komandne linije. Izraz je oblika:
      <komp_broj_1> <op_1> <komp_broj_2> <op_2> .... <op_n> <komp_broj_n+1> 

      gde je svaki kompleksan broj u obliku (a,b) gde su a i b redom 
      realni i imaginarni deo, dok su operatori iz skupa {+,-,*,/}.
      Operacije se obavljaju sa leva u desno, pod pretpostavkom da su svi
      istog prioriteta. Za dobijeni rezultat odrediti moduo, argument kao 
      i konjugovano kompleksni broj. 
2) U datoteci (cije se ime zadaje sa komandne linije) dat je neki tekst. 
   Napisati program koji sifruje dati tekst tzv. "Cezarovom" sifrom, i 
   rezultujuci tekst upisuje u drugu datoteku, cije se ime takodje zadaje
   sa komandne linije (ako se ne navede, ispisuje na standardni izlaz). 
   Cezarovom sifrom se slova kodiraju na sledeci nacin: A -> D, B -> E, 
   ..., X -> A, Y -> B, Z -> C (slicno za mala slova). Ostali karakteri
   ostaju nepromenjeni.


