Advertisement
thebys

První vnitrosemestrální písemka z C

Oct 30th, 2013
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.53 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. //prvni vnitrosemestralni pisemka z C, zadani je v ISu
  4. int main()
  5. {
  6.     //promenne and stuff
  7.     //deklrace, pole a ukol 1
  8.     int delkaPole;
  9.     int pocetSudych = 0;
  10.     int pocetLichych = 0;
  11.     int pocetZapornych = 0;
  12.     int pocetNeZapornych = 0; //nezaporna tj. nula sem patri
  13.     int stavajiciMin = 9999; //0 neni dobra vychozi pozice
  14.     int stavajiciMax = -9999; //0 neni dobra vychozi pozice
  15.     int sudaSekvence = 0;
  16.     int lichaSekvence = 0;
  17.     int maxSudaSekvence = 0;
  18.     int maxLichaSekvence = 0;
  19.     puts("Ahoy! Zadej delku pole:");
  20.     scanf("%d", &delkaPole);
  21.     if(!(0 < delkaPole))
  22.     {
  23.         return -1;   //nulove nebo zaporne pole je neprijatelne.
  24.     }
  25.     int poleCisel[delkaPole];
  26.  
  27.     //naplneni pole cisly od uzivatele
  28.     for(int i = 0; i < delkaPole; ++i)
  29.     {
  30.         printf("Zadejte %d. cislo:\n", i);
  31.         scanf("%d", &poleCisel[i]);
  32.     }
  33.  
  34.  
  35.     //foreach int in poleCisel :)
  36.     for(int i = 0; i < delkaPole; ++i)
  37.     {
  38.         //hledani sudych a lichych (ukol2)
  39.         //pocitani delky komba (ukol4)
  40.         if(poleCisel[i] % 2 == 0)
  41.         {
  42.             lichaSekvence = 0;
  43.             ++pocetSudych;
  44.             ++sudaSekvence;
  45.             if(maxSudaSekvence < sudaSekvence)
  46.             {
  47.                 maxSudaSekvence = sudaSekvence;
  48.             }
  49.         }
  50.         else
  51.         {
  52.             sudaSekvence = 0;
  53.             ++pocetLichych;
  54.             ++lichaSekvence;
  55.             if(maxLichaSekvence < lichaSekvence)
  56.             {
  57.                 maxLichaSekvence = lichaSekvence;
  58.             }
  59.         }
  60.         //hledani zapornych a nezapornych (ukol 3)
  61.         if(poleCisel[i] < 0)
  62.         {
  63.             ++pocetZapornych;
  64.         }
  65.         else
  66.         {
  67.             ++pocetNeZapornych;
  68.         }
  69.         //hledani max a min cisel
  70.         if(poleCisel[i] < stavajiciMin)
  71.         {
  72.             stavajiciMin = poleCisel[i];
  73.         }
  74.         if(stavajiciMax < poleCisel[i])
  75.         {
  76.             stavajiciMax = poleCisel[i];
  77.         }
  78.     }
  79.     //finalni vypis
  80.     printf("UKOL 2: Nalezeno %d sudych cisel a %d lichych cisel.\n", pocetSudych, pocetLichych);
  81.     printf("UKOL 3: Nalezeno %d zapornych cisel a %d nezapornych cisel.\n", pocetZapornych, pocetNeZapornych);
  82.     printf("UKOL 4: Nalezena nejdelsi suda sekvence: %d a nejdelsi licha sekvence: %d.\n", maxSudaSekvence, maxLichaSekvence);
  83.     printf("UKOL 5: Nalezeno nejvyssi cislo %d a nejnizsi cislo %d.\n", stavajiciMax, stavajiciMin);
  84.     return 0;
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement