Guest User

Untitled

a guest
Jul 23rd, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.90 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main(int argc, char *argv[]){
  4.     FILE *ppm = fopen(argv[1],"rb");
  5.     FILE *pbm = fopen(argv[2],"w");
  6.     if (ppm==NULL || pbm == NULL) {puts("Cannot open file."); exit(0);}
  7.     fprintf(pbm,"P1\n");
  8.     int i=0, meja=0;
  9.     char *vnos = (char *) malloc(1024);
  10.     while (fscanf(ppm,"%s",vnos)==1) {
  11.         if (vnos[0]=='#') {
  12.             fgets(vnos,80,ppm);
  13.         } else {
  14.             i++;
  15.             if (i==2 || i==3) fprintf(pbm,"%s ",vnos);
  16.             if (i==2) meja=atoi(vnos);
  17.         }
  18.         if (i==4) break;   
  19.     }
  20.     fprintf(pbm,"\n");
  21.     int steviloZapisov=0, vsota = 0, newLine=0;
  22.     while (fread(vnos,1,1,ppm)==1) {
  23.         if (steviloZapisov == 3) {
  24.             newLine++;
  25.             if ((vsota/3)+128>127) fprintf(pbm,"1 ");
  26.             else fprintf(pbm, "0 ");
  27.             vsota = 0;
  28.             steviloZapisov = 0;
  29.         }  
  30.         int a = vnos[0];
  31.         vsota += a;
  32.         steviloZapisov++;
  33.         if (newLine%meja==0) fprintf(pbm, "\n");
  34.     }
  35.     free(vnos);
  36.     fclose(pbm);
  37.     fclose(ppm);
  38. }
Add Comment
Please, Sign In to add comment