Advertisement
Guest User

Untitled

a guest
Dec 7th, 2019
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.30 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<stdlib.h> //potrzebne do losowania liczb;
  3. #include<time.h> //potrzebne do losowania liczb;
  4.  
  5. #define SIZE 10
  6. #define SIZE2 20
  7.  
  8. //te 4 linijki ponizej to poinformowanie kompilatora
  9. //jakie funkcje znajduja sie w dalszej czesci programu;
  10. void wczytajTab(int *, int);
  11. void wypiszTab(int *, int);
  12. void wpiszDoTab3(int *, int, int *, int *, int);
  13. void sortowanie(int *, int);
  14.  
  15. int main()
  16. {
  17.     int tab1[SIZE], tab2[SIZE], tab3[SIZE2]; //tablice w main - nie sa globalne;
  18.     srand(time(NULL)); //potrzebne do losowanie liczb;
  19.     wczytajTab(tab1, SIZE);
  20.     printf("Zawartosc tab1:\n");
  21.     wypiszTab(tab1, SIZE);
  22.     printf("\n");
  23.     wczytajTab(tab2, SIZE);
  24.     printf("Zawartosc tab2:\n");
  25.     wypiszTab(tab2, SIZE);
  26.     printf("\n");
  27.     wpiszDoTab3(tab3, SIZE2, tab1, tab2, SIZE);
  28.     printf("tab3 przed sortowaniem:\n");
  29.     wypiszTab(tab3, SIZE2);
  30.     printf("\n");
  31.     sortowanie(tab3, SIZE2);
  32.     printf("tab3 po sortowaniu:\n");
  33.     wypiszTab(tab3, SIZE2);
  34. }
  35.  
  36. void wczytajTab(int *tab, int length)
  37. {
  38.     for(int i=0; i<length; i++)
  39.     {
  40.         tab[i]=rand()%100; //losowa liczba od 0 do 99;
  41.     }
  42. }
  43.  
  44. void wypiszTab(int *tab, int length)
  45. {
  46.     for(int i=0; i<length; i++)
  47.     {
  48.         printf("%d. %d\n", i, tab[i]);
  49.     }
  50. }
  51.  
  52.  
  53. //komentarz do wpiszDoTab3: oznaczenie kolejnych argumentow (tablica1, tablica2, tablica3)
  54. //nie jest zgodne z tym w jaki sposob wywolujemy funkcje w main "wpiszDoTab3(tab3, SIZE2, tab1, tab2, SIZE)",
  55. //to nie jest zaden problem;
  56. void wpiszDoTab3(int *tablica1, int length1, int *tablica2, int *tablica3, int length2)
  57. {
  58.     int k=0;
  59.     for(int i=0; i<length2; i++)
  60.     {
  61.         if(tablica2[i]>tablica3[i])
  62.         {
  63.             tablica1[k]=tablica2[i];
  64.             tablica1[k+1]=tablica3[i];
  65.             k=k+2;
  66.         }
  67.         else
  68.         {
  69.             tablica1[k]=tablica3[i];
  70.             tablica1[k+1]=tablica2[i];
  71.             k=k+2;
  72.         }
  73.     }
  74. }
  75.  
  76.  
  77. //zwykle sortowanie babelkowe;
  78. void sortowanie(int *tab, int length)
  79. {
  80.     int temp;
  81.     for(int i=0; i<length; i++)
  82.     {
  83.         for(int j=0; j<length-1; j++)
  84.         {
  85.             if(tab[j]>tab[j+1])
  86.             {
  87.                 int temp=tab[j];
  88.                 tab[j]=tab[j+1];
  89.                 tab[j+1]=temp;
  90.             }
  91.         }
  92.     }
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement