1) Napisati funkciju koja izracunava limes funkcije f(x) u tacki a. Adresa
funkcije f ciji se limes racuna se prenosi kao parametar funkciji za racunanje
limesa. Limes se racuna sledecom aproksimacijom:

lim_{x->a} f(x) = lim_{n->inf} f(a + 1/n).

2) Napisati funkciju koja odredjuje integral funkcije f(x) na intervalu
[a,b]. Adresa funkcije f se prenosi kao parametar. Integral se racuna prema
formuli:

I = h/3 * (f(a) - f(a) + 4*sum_{i=1,n}f(a+(2i-1)h) + 2*sum_{i=1,n}f(a+2ih))
 
3) Napisati program koji sortira niz double podataka qsort() funkcijom u
sledecem poretku: a < b akko a ima manje decimala. Brojevi sa istim brojem
decimala se uporedjuju na klasican nacin.

4) Napisati program koji sortira vrste matrice int-ova qsort() funkcijom.
Poredak medju vrstama v1 i v2 je definisan na sledeci nacin: v1 < v2 ako je 
zbir elemenata u v1 manji od zbira elemenata u v2. Pretpostaviti da je broj
vrsta i kolona matrice najvise 100.

5) Napisati program koji sortira niz stringova, pri cemu je poredak definisan 
na sledeci nacin: s < t akko je broj cifara koje se pojavljuju u s manji od
broja cifara koje se pojavljuju u t. 

6) Definisana je struktura:

   typedef struct
   {
	int dan;
	int mesec;
	int godina;
   } Datum;

Napisati funkciju koja poredi dva datuma i program koji prvo ucitava n
datuma preko standardnog ulaza, sortira ih pozivajuci funkciju qsort iz 
standardne biblioteke i potom sa standardnog ulaza ucitava datum i pozivanjem
funkcije bsearch iz standardne biblioteke proverava da li takav datum postoji
medju prethodno unetim datumima.
