#include #include #include int main(int argc, char * argv[]) { if(argc < 3) { // brojot na argumenti e pomal od 3, sto znaci deka ne sme vnele dovolno za da imame ime na vlezna i izlezna datoteka printf("Vnesete gi iminjata na datotekite preku komadna linija\n"); return 0; } FILE * in = fopen(argv[1], "r"); FILE * out = fopen(argv[2], "w"); if(in == NULL) { printf("Ne vnesovte validen fajl za citanje\n"); return 0; } if(out == NULL) { printf("Ne vnesovte validen fajl za pecatenje\n"); return 0; } char niza[2000]; while(fgets(niza, 200, in) != NULL) { int broj = 0; int resultat = 0; char znak; for(int i = 0; i < strlen(niza); i++) { if(isdigit(niza[i])) { broj = broj * 10 + (niza[i] - '0'); } else { if(niza[i] == '+') { znak = '+'; } else if(niza[i] == '-') { znak = '-'; } else if(niza[i] == '*') { znak = '*'; } else if(niza[i] == '/') { znak = '/'; } if(broj > 0) { if(znak == '+') { resultat += broj; } else if(znak == '-') { resultat -= broj; } else if(znak == '*') { resultat *= broj; } else if(znak == '/') { resultat /= broj; } broj =0 ; } } } fprintf(out, "%d\n", resultat); } }