Advertisement
Soleckie

Untitled

Jan 26th, 2015
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.41 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7.  
  8. int losowaLiczba(){
  9.     return rand()%100 + 1;
  10. }
  11.  
  12. void sortowanie_babelkowe(int *tab[],int n)
  13. {  
  14.   int *pom;
  15.  
  16.   for(int i=0;i<n;i++){
  17.  
  18.         for(int j=0;j<n-i-1;j++)
  19.             if(*tab[j]>*tab[j+1])
  20.             {
  21.               pom = tab[j];
  22.               tab[j] = tab[j+1];
  23.               tab[j+1] = pom;
  24.             }
  25.            
  26.            
  27.     }
  28. }
  29.  
  30.  
  31. int main(int argc, char** argv) {
  32.  
  33.     cout << "Dzialanie programu:\n1. Tworzenie tablicy [10x10] z losowo wygenerowanymi liczbami [1-100].\n2. Wyluskanie liczb podzielnych przez 6.\n3. Posortowanie liczb.\n4. Zapisanie posortowanych liczby w pliku tekstowym.\n\n\n";
  34.  
  35.    
  36.     int tablica[10][10];
  37.    
  38.     cout<< "\n\nTablica z losowymi liczbami 1 - 100.\n-----------------------------------------------------------------------\n";
  39.    
  40.     for(int wiersz = 0; wiersz < 10; wiersz++){
  41.         for(int kolumna = 0; kolumna < 10; kolumna++){
  42.             tablica[wiersz][kolumna] = losowaLiczba();
  43.             cout << tablica[wiersz][kolumna] << " ";
  44.             if(tablica[wiersz][kolumna] <= 9) cout << " ";
  45.             if(tablica[wiersz][kolumna] <= 99 ) cout << " ";
  46.            
  47.         }
  48.         cout << endl << endl;
  49.    
  50.     }
  51.    
  52.     int liczba_podzielnych = 0;
  53.    
  54.     for(int wiersz = 0; wiersz < 10; wiersz++)
  55.         for(int kolumna = 0; kolumna < 10; kolumna++)
  56.             if(tablica[wiersz][kolumna] % 6 == 0) liczba_podzielnych++;
  57.    
  58.     int *podzielne[liczba_podzielnych];
  59.     int i = 0;
  60.    
  61.    
  62.     for(int wiersz = 0; wiersz < 10; wiersz++){
  63.         for(int kolumna = 0; kolumna < 10; kolumna++){
  64.             int sprawdzana_liczba = tablica[wiersz][kolumna];
  65.             if(sprawdzana_liczba%6 == 0){
  66.                 podzielne[i++] = &tablica[wiersz][kolumna];
  67.             }  
  68.         }
  69.     }
  70.    
  71.     cout << "\n\nLiczby podzielne przez 6 przed sortowaniem.\n-----------------------------------------------------------------------\n";
  72.    
  73.     for(int n = 0; n < liczba_podzielnych; n++){
  74.         if( *podzielne == 0) break;
  75.         cout << *podzielne[n] << "  ";
  76.     }
  77.    
  78.    
  79.     sortowanie_babelkowe(podzielne, liczba_podzielnych);
  80.    
  81.     cout<< "\n\nLiczby po sortowaniu.\n-----------------------------------------------------------------------\n";
  82.    
  83.    
  84.     for(int n = 0; n < liczba_podzielnych; n++){
  85.         if( *podzielne == 0) break;
  86.         cout << *podzielne[n] << "  ";
  87.     }
  88.    
  89.     ofstream plik_zapisu;
  90.     plik_zapisu.open("liczby.txt");
  91.     plik_zapisu << endl;
  92.     for (int n = 0; n < liczba_podzielnych; n++){
  93.             plik_zapisu << *podzielne[n] << ", ";
  94.     }
  95.     plik_zapisu.close();
  96.    
  97.     return 0;
  98. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement