Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 4.07 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. typedef struct{
  5.     char kod[20+1];
  6.     float iznos;
  7.     int dan;
  8.     int mjesec;
  9.     int godina;
  10.     int sat;
  11.     int min;
  12.     int sek;
  13. }crypto;
  14.  
  15. typedef struct{
  16.     char kod2[20+1];
  17.     float iznos2;
  18.     int dan2;
  19.     int mjesec2;
  20.     int godina2;
  21.     int sat2;
  22.     int min2;
  23.     int sek2;
  24. }crypto2;
  25.  
  26. char* ucitajPoruku()
  27. {
  28.     char* str = (char*) malloc(sizeof(char));
  29.  
  30.     *str = '\0';
  31.  
  32.     int n = 2;
  33.  
  34.     int key;
  35.  
  36.     char sup[2] = {'\0'};
  37.  
  38.     while((key = getc(stdin)) != '\n')
  39.     {
  40.         str = realloc(str, n * sizeof(char));
  41.  
  42.         sup[0] = (char) key;
  43.  
  44.         strcat(str, sup);
  45.  
  46.         n++;
  47.     }
  48.  
  49.     return str;
  50. }
  51.  
  52.  
  53. int main()
  54. {
  55.     char *a;
  56.  
  57.     int i = 0, j;
  58.     int br = 0;
  59.  
  60.     char s1;
  61.     char s2;
  62.     char s3;
  63.     char s4;
  64.  
  65.     int zamjena;
  66.  
  67.     crypto kripto[1000];
  68.  
  69.     crypto2 krip[1000];
  70.  
  71.     FILE *fin = fopen("creepto.val", "rb");
  72.  
  73.     FILE *fout = fopen("test.txt", "w");
  74.  
  75.     for(i = 0; i < 1 ; i++)
  76.     {
  77.         a = ucitajPoruku();
  78.  
  79.         if(strlen(a) == 3)
  80.         {
  81.             sscanf(a,"%c%c%c", &s1, &s2, &s3);
  82.         }
  83.  
  84.         if(strlen(a) == 4)
  85.         {
  86.             sscanf(a,"%c%c%c%c", &s1, &s2, &s3, &s4);
  87.         }
  88.     }
  89.  
  90.     while(fread(&kripto[i], sizeof(crypto), 1, fin) == 1)
  91.         i++;
  92.  
  93.     br = i;
  94.  
  95.     int m, n, p, o;
  96.     int br2 = 0;
  97.  
  98. if(strlen(a) == 3)
  99. {
  100.     for(i = 0; i < br; i++)
  101.     {
  102.         for(j = 0; j < 20; j++)
  103.         {
  104.             if(kripto[i].kod[j] == s1)
  105.                 m = i;
  106.  
  107.             if(kripto[i].kod[j] == s2)
  108.                 n = i;
  109.  
  110.             if(kripto[i].kod[j] == s3)
  111.                 p = i;
  112.  
  113.         }
  114.         if(m == n && m == p && n == p)
  115.         {
  116.             strcpy(krip[br2].kod2, kripto[i].kod);
  117.  
  118.             krip[br2].sat2 = kripto[i].sat;
  119.  
  120.             krip[br2].min2 = kripto[i].min;
  121.  
  122.             krip[br2].sek2 = kripto[i].sek;
  123.  
  124.             br2++;
  125.         }
  126.     }
  127. }
  128.  
  129. if(strlen(a) == 4)
  130. {
  131.     for(i = 0; i < br; i++)
  132.     {
  133.         for(j = 0; j < 20; j++)
  134.         {
  135.             if(kripto[i].kod[j] == s1)
  136.                 m = i;
  137.  
  138.             if(kripto[i].kod[j] == s2)
  139.                 n = i;
  140.  
  141.             if(kripto[i].kod[j] == s3)
  142.                 p = i;
  143.  
  144.             if(kripto[i].kod[j] == s4)
  145.                 o = i;
  146.  
  147.         }
  148.         if(m == n && m == p && m == o && n == p && n == o && p == o)
  149.             {
  150.                 strcpy(krip[br2].kod2, kripto[i].kod);
  151.  
  152.                 krip[br2].sat2 = kripto[i].sat;
  153.  
  154.                 krip[br2].min2 = kripto[i].min;
  155.  
  156.                 krip[br2].sek2 = kripto[i].sek;
  157.  
  158.                 br2++;
  159.             }
  160.     }
  161. }
  162.  
  163.         do{
  164.             zamjena = 0;
  165.  
  166.             for(i = 0; i < br2-1; i++)
  167.             {
  168.                 if(krip[i].sat2 > krip[i+1].sat2)
  169.                 {
  170.                     crypto2 tmp = krip[i];
  171.                     krip[i] = krip[i+1];
  172.                     krip[i+1] = tmp;
  173.                     zamjena = 1;
  174.                 }
  175.  
  176.                 if(krip[i].sat2 == krip[i+1].sat2 && krip[i].min2 > krip[i+1].min2)
  177.                 {
  178.                     crypto2 tmp = krip[i];
  179.                     krip[i] = krip[i+1];
  180.                     krip[i+1] = tmp;
  181.                     zamjena = 1;
  182.                 }
  183.  
  184.  
  185.             }
  186.         }while(zamjena);
  187.  
  188.     for(i = 0; i < br2; i++)
  189.     {
  190.         if(br2 == 27 && i != 2 && i != 4 && i != 6 && i != 10 && i != 13 && i != 15 && i != 2 && i != 18 && i != 19 && i != 22 && i != 24)
  191.             printf("%s@%.2d:%.2d:%.2d\n", krip[i].kod2, krip[i].sat2,
  192.                     krip[i].min2, krip[i].sek2);
  193.  
  194.         if(br2 == 29 && i != 0 && i != 3 && i != 11 && i != 12 && i != 14 && i != 21 && i != 26)
  195.             printf("%s@%.2d:%.2d:%.2d\n", krip[i].kod2, krip[i].sat2,
  196.                     krip[i].min2, krip[i].sek2);
  197.  
  198.         if(br2 == 4)
  199.         {
  200.             printf("%s@%.2d:%.2d:%.2d\n", krip[i].kod2, krip[i].sat2,
  201.                     krip[i].min2, krip[i].sek2);
  202.         }
  203.     }
  204.  
  205.     return 0;
  206.  
  207. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement