Advertisement
Guest User

Untitled

a guest
Jan 28th, 2015
183
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.67 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <time.h>
  3.  
  4. void generuj_losowo_tablice(int **tab,int wier, int kol)
  5. {
  6. int i, j;
  7. for(i=0;i<wier;i++)
  8. for(j=0;j<kol;j++)
  9. *(*(tab+i)+j)=rand()%100;
  10. }
  11.  
  12. void wyswietl_tablice(int **tab, int wiersze, int kolumny)
  13. {
  14. int i,j;
  15. for (i=0;i<wiersze;i++)
  16. {
  17. puts("");
  18. for(j=0;j<kolumny;j++)
  19. printf("tab[%d][%d]=%d\t",i,j,*(*(tab+i)+j));
  20. }
  21. }
  22.  
  23. int sumuj_kolumne(int **tab, int liczba_wier, int nr_kol)
  24. {
  25. int i, suma=0;
  26. for(i=0;i<liczba_wier;i++)
  27. suma+=*(*(tab+i)+nr_kol);
  28. printf("Suma elementow kolumny %d wynosi: %d\n",nr_kol,suma);
  29. return suma;
  30. }
  31.  
  32. int sumuj_wiersz(int **tab, int liczba_kol, int nr_wier)
  33. {
  34. int i, suma=0;
  35. for(i=0;i<liczba_kol;i++)
  36. suma+=*(*(tab+nr_wier)+i);
  37. printf("Suma elementow wiersza %d wynosi: %d\n",nr_wier,suma);
  38. return suma;
  39. }
  40.  
  41. void sortuj_wiersz(int **tab,int wiersze, int kolumny, int nrw)
  42. {
  43. int i, j, temp;
  44. for(i=0;i<kolumny;i++)
  45. for(j=kolumny-1;j>i;--j)
  46. {
  47. if( *(*(tab+nrw)+i) > *(*(tab+nrw)+j))
  48. {
  49. temp = *(*(tab+nrw)+i);
  50. *(*(tab+nrw)+i) = *(*(tab+nrw)+j);
  51. *(*(tab+nrw)+j) = temp;
  52. }
  53.  
  54. }
  55. wyswietl_tablice(tab, wiersze, kolumny);
  56.  
  57. }
  58.  
  59. int stworz_tab(int il_w, int il_kol)
  60. {
  61. int **tab;
  62. int i;
  63. tab = (int**) malloc(il_w*sizeof(int *)); if(tab==NULL) return 0;
  64. for(i=0;i<il_w;i++)
  65. tab[i] = (int *) malloc(il_kol*sizeof(int));
  66. return tab;
  67. }
  68.  
  69.  
  70.  
  71. int main(void)
  72. {
  73. int i, w, k, /***tabelka,*/ ktory_wiersz, ktora_kolumna, w_sort;
  74. srand(time(NULL));
  75. printf("\nPodaj ilosc kolumn( najlepiej <5 wariacie): "); scanf("%d",&k);
  76. printf("\nPodaj ilosc wierszy( mozesz i duzo, zmiesci sie): "); scanf("%d",&w);
  77.  
  78. int **tabelka = stworz_tab(w,k);
  79.  
  80. /*
  81. tabelka = (int **) malloc (w * sizeof(int *));
  82. if(tabelka == NULL)
  83. {
  84. printf("Blad malloca\n");
  85. return 0;
  86. }
  87.  
  88. for(i=0;i<w;i++)
  89. {
  90. tabelka[i] =(int *) malloc(k * sizeof(int));
  91. if(tabelka[i] == NULL)
  92. {
  93. printf("Nie udalo sie zaalokowac pamieci");
  94. return(0);
  95. }
  96. }
  97. */
  98.  
  99. generuj_losowo_tablice(tabelka,w,k);
  100. wyswietl_tablice(tabelka,w,k);
  101. printf("\n\nKtora kolumne chces zsumowac Miki?");
  102. scanf("%d",&ktora_kolumna);
  103. sumuj_kolumne(tabelka,w,ktora_kolumna);
  104. printf("\nKtory wiersz chcesz zsumowac Mikolaj?");
  105. scanf("%d",&ktory_wiersz);
  106. sumuj_wiersz(tabelka,k,ktory_wiersz);
  107. printf("\nKtory wiersz chcesz posortowac?");
  108. scanf("%d",&w_sort);
  109. sortuj_wiersz(tabelka,w,k,w_sort);
  110.  
  111. return 0;
  112. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement