Facebook
From YİĞİT KARAKOYUN, 4 Years ago, written in C.
Embed
Download Paste or View Raw
Hits: 142
  1. #include <stdio.h>
  2. #include <conio.h>
  3. #include <stdlib.h>
  4.  
  5. int main(){
  6.     int a, b, i, j;
  7.  
  8.     printf("Matris Satir Sayisi Giriniz: ");
  9.     scanf("%d", &a);
  10.     printf("Matris Sutun Sayisi Giriniz: ");
  11.     scanf("%d", &b);
  12.    
  13.     int matris[a][b], matrisT[b][a];
  14.    
  15.     void Matris_Doldurma(int i, int y, int deger){
  16.         matris[i][j] = deger;
  17.     }
  18.    
  19.     void swap(int *xp, int *yp)
  20.     {
  21.         int temp = *xp;
  22.         *xp = *yp;
  23.         *yp = temp;
  24.     }
  25.  
  26.     // A function to implement bubble sort
  27.     void bubbleSort(int arr[], int n)
  28.     {
  29.        int i, j;
  30.        for (i = 0; i < n-1; i++)      
  31.      
  32.            // Last i elements are already in place    
  33.            for (j = 0; j < n-i-1; j++)  
  34.                if (arr[j] > arr[j+1])
  35.                   swap(&arr[j], &arr[j+1]);
  36.     }
  37.      
  38.     // Driver program to test above functions
  39.     void Matris_BubbleSiralama()
  40.     {
  41.         int arr[a*b];
  42.         int count = 0;
  43.         for(i=0; i<a; i++){
  44.             for(j=0; j<b; j++){
  45.                 arr[count] = matris[i][j];
  46.                 count++;
  47.             }
  48.         }
  49.         count = 0;
  50.        
  51.         int n = sizeof(arr)/sizeof(arr[0]);
  52.         bubbleSort(arr, n);
  53.        
  54.         for(i=0; i<a; i++){
  55.             for(j=0; j<b; j++){
  56.                 Matris_Doldurma(i,j,arr[count]);
  57.                 count++;
  58.             }
  59.         }
  60.    
  61.     }
  62.    
  63.     int Rastgele_Sayi_Olusturma(){
  64.         return (rand() % 100)+1;
  65.     }
  66.    
  67.     // Matris'e Elemanları Rastgele Alma
  68.     void Matrisin_Rastgele_Degerler_Alma(){
  69.         for(i=0; i<a; i++)
  70.             for(j=0; j<b; j++){
  71.                Matris_Doldurma(i,j,Rastgele_Sayi_Olusturma());
  72.             }
  73.     }
  74.    
  75.    
  76.     void Matrisin_Transpozunu_Alma(){
  77.         //Matrisin Transpozunu alma
  78.         for(i=0; i<a; i++){
  79.             for(j=0; j<b; j++){
  80.                 matrisT[j][i] = matris[i][j];
  81.             }
  82.         }
  83.     }
  84.    
  85.        
  86.     // Matris elemanlarını ekrana yazdırma
  87.     void  Matris_Elemanlarini_Ekrana_Yazdirma(){
  88.         printf("\nMatrisin Kendisi\n");
  89.         for(i=0; i<a; i++){
  90.             for(j=0; j<b; j++){
  91.                 printf("%d ", matris[i][j]);
  92.             }
  93.             printf("\n");
  94.         }
  95.        
  96.     }
  97.    
  98.    
  99.     // Matrisin Transpozunun Ekrana Yazdırma
  100.     void  Matris_Transpozunun_Elemanlarini_Ekrana_Yazdirma(){
  101.         printf("\nMatrisin Transpozu\n");
  102.         for(i=0; i<b; i++){
  103.             for(j=0; j<a; j++){
  104.                 printf("%d ", matrisT[i][j]);
  105.             }
  106.         printf("\n");
  107.            
  108.         }
  109.     }
  110.    
  111.     Matrisin_Rastgele_Degerler_Alma();
  112.     Matris_BubbleSiralama();
  113.     Matrisin_Transpozunu_Alma();
  114.     Matris_Elemanlarini_Ekrana_Yazdirma();
  115.     Matris_Transpozunun_Elemanlarini_Ekrana_Yazdirma();
  116.    
  117.    
  118.    
  119.     getch();
  120.     return 0;
  121. }