/***************************************************************** * Ovo delo zaštićeno je licencom Creative Commons CC BY-NC-ND 4.0 * (Attribution-NonCommercial-NoDerivatives 4.0 International License). * Za detalje pogledati LICENSE.TXT * Autori: Milena Vujosevic Janicic, Jovana Kovacevic, * Danijela Simic, Andjelka Zecevic, Aleksandra Kocic ******************************************************************/ #include #include #include #define MAKS_ELEMENATA 1000 /* Funkcija ispisuje prosledjenu poruku o gresci na standardni izlaz za greske i prekida izvrsavanje programa. */ void greska(char *poruka) { fprintf(stderr, "%s\n", poruka); exit(EXIT_FAILURE); } /* Funkcija ucitava karaktere iz datoteke i smesta ih u niz s. */ int ucitaj_karaktere(char s[], FILE *f) { char c; int n = 0; /* Citanje karaktera do kraja datoteke ili dok se ne ucita MAKS_ELEMENATA ili dok se ne dodje do karaktera koji nije ni slovo ni cifra. */ while((c = fgetc(f)) != EOF && n < MAKS_ELEMENATA) { if(isalpha(c) || isdigit(c)) s[n] = c; else break; n++; } return n; } /* Funkcija racuna koliko slova i koliko cifara se nalazi u nizu s.*/ void prebroj(char s[], int n, int *broj_slova, int *broj_cifara) { int i; /* Inicijalizacija brojaca. */ *broj_slova = *broj_cifara = 0; /* Prebrojavanje slova i cifara. */ for(i=0; i