Advertisement
Dimitrija

Laboratoriski ISPITNI - 12 SP UPDATED

Jan 5th, 2021 (edited)
443
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.24 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <ctype.h>
  3. #include <string.h>
  4.  
  5. /*
  6.  
  7. Да се напише програма во која од дадена датотека со име "input.txt" за секој ред ќе се отпечати бројот на цифри во тој ред, знакот :, па самите цифри подредени според ASCII кодот во растечки редослед. Редовите во датотеката не се подолги од 100 знаци.
  8.  
  9. For example:
  10.  
  11. Input  
  12. 74I9BjpbhbsfX6Ai0xtnmv4csz2gNv
  13. wtkb3Y82B9oygnG1vhRsMOuman2n894v08w4pI3e4x
  14. p7A3pO1U70aeGxwpOptb2rie
  15. nw01MAok4HWisf913hjtiyscgwhdr7w92lm7eddhy6ne40fHbsZc3ac
  16. Zmwk1yrnqt0LjT6ItS2kH
  17. kfcp3Xpxx030B0ojf2G2o4JgkTsolbxqgxkifmbwrxRevKum8tvq4FZxi9LsUM2bq3jGjuo0eu4iv6
  18. W79qURXz32tn8gdzAmasf019JdFbVtizbwu1t09dlkLfpxF1dw7g4wqHSLgEojK27bYP
  19. wyqzCunXvicN1D31v41hbhvmC45m69u587aW0gAZ4mvhypshmn0kVs
  20.  
  21. Result
  22. 7:0244679
  23. 14:01223344488899
  24. 6:012377
  25. 14:00112334467799
  26. 4:0126
  27. 16:0000222333444689
  28. 16:0011122347778999
  29. 15:001113444556789
  30.  
  31. */
  32.  
  33. void wtf() {
  34.     FILE *f = fopen("input.txt", "w");
  35.     char c;
  36.     while((c = getchar()) != EOF) {
  37.         fputc(c, f);
  38.     }
  39.     fclose(f);
  40. }
  41.  
  42.  
  43. void sort(char *niza,int N){
  44.  
  45.     char temp;
  46.     int i,j;
  47.     for (i=0;i<N; i++){
  48.         for (j=0;j<N-1-i; j++){
  49.  
  50.             if (*(niza+j) >= *(niza+j+1)){
  51.                 temp = *(niza+j);
  52.                 *(niza+j) = *(niza+j+1);
  53.                 *(niza+j+1) = temp;
  54.             }
  55.  
  56.         }
  57.  
  58.     }
  59.    
  60.  
  61. }
  62.  
  63.  
  64. int main() {
  65.     wtf();
  66.     FILE *dat;
  67.     if ((dat = fopen("input.txt","r")) == NULL){
  68.         fprintf(stderr,"ERROR");
  69.         return -1;
  70.     }
  71.    
  72.     char string[101];
  73.     int row_sum,i;
  74.     char niza[101];
  75.    
  76.    
  77.     while((fgets(string,100,dat)) != NULL){
  78.         row_sum=0;
  79.         for (i = 0;string[i] != '\0';i++){
  80.             if (isdigit(string[i])){
  81.                 niza[row_sum]=string[i];
  82.                 row_sum++;
  83.             }
  84.        
  85.         }
  86.        
  87.         sort(niza,row_sum);
  88.         printf("%d:",row_sum);
  89.        
  90.         for (i=0;i<row_sum;i++){
  91.             printf("%c",niza[i]);
  92.         }
  93.        
  94.         printf("\n");
  95.        
  96.     }
  97.     fclose(dat);
  98.    
  99.     return 0;
  100. }
  101.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement