Facebook
From Thundering Pig, 9 Years ago, written in C.
Embed
Download Paste or View Raw
Hits: 597
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. int main()
  6. {
  7.     int **tablica;
  8.     int w,k,i,j,g;
  9.     int licznik=0;
  10.  
  11.  
  12.     printf ("Podaj liczbe wierszy\n");
  13.     scanf ("%d", &w);
  14.     printf ( "Podaj liczbe kolumn\n");
  15.     scanf ("%d", &k);
  16.     printf("Do jakiej liczby chcesz losowac ?");
  17.     scanf("%d",&g);
  18.  
  19.     tablica= (int **) malloc (w * sizeof (int*)); // przydzielenie pamieci
  20.  
  21.     for (i=0;i<w;i++)
  22.         tablica[i]= (int *) malloc (k * sizeof(int));
  23.  
  24.     for(i=0;i<w;i++) // zerowanie
  25.         {
  26.         for(j=0;j<k;j++)
  27.             tablica[i][j]=0;
  28.         }
  29.  
  30.     printf("\nLosowanie liczb wierszami\n");
  31.     srand(time(0));
  32.  
  33.     for(i=0;i<w;i++)
  34.     {
  35.         printf("\n");
  36.  
  37.         for(j=0;j<k;j++)
  38.         {
  39.             tablica[i][j] =rand()%g;
  40.             printf("%2d ", tablica[i][j]);
  41.  
  42.         }
  43.     }
  44.     printf("\n");
  45.     printf("\nNieparzyste indeksy wierszy i parzyste indeksy kolumn\n");
  46.  
  47.  
  48.      for(i=0;i<w;i++) // losowanie liczby
  49.      {
  50.         printf("\n");
  51.  
  52.         for(j=0;j<k;j++)
  53.         {
  54.             if( i%2==1 && j%2==0 ) //zalozenie, nieparzyste w - parzyste k
  55.             {
  56.                 printf("%2d ", tablica[i][j]);
  57.  
  58.                                     // potrzebne do rozmiaru wyniku
  59.                 licznik++;
  60.  
  61.             }
  62.             else
  63.             {
  64.                 printf("== ");
  65.             }
  66.         }
  67.      }
  68.     printf("\n");
  69.                                         // przypisuje wartosci do wskaznika wynik
  70.     int *wynik;
  71.     wynik=(int*) malloc (licznik * sizeof(int));
  72.     int liczelem=0;
  73.  
  74.     for(j=0; j<k; j+=2)  //par k
  75.         for(i=1; i<w; i+=2) //npar w
  76.         {
  77.             wynik[liczelem]=tablica[i][j];
  78.             liczelem++;
  79.         }
  80.     printf("\nLiczba elementow, wynikow %d\n", liczelem);
  81.     int pokaz;                                                          //wykorzystana do wyswietlenia wynikow
  82.     for(pokaz=0;pokaz<liczelem;pokaz++)
  83.         printf("\nWynik[%d]=%2d\n", pokaz+1 ,wynik[pokaz]);
  84.  
  85.     printf("\n");
  86.  
  87. free(tablica);
  88. for(i=0; i<w; i++)
  89. {
  90.     free(tablica[i]);
  91. }
  92. free(wynik);
  93.  
  94. system("PAUSE");
  95. return 0;
  96. }
  97.