Advertisement
Soleckie

Untitled

Jan 23rd, 2015
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstdlib>
  4. #include <ctime>
  5.  
  6. using namespace std;
  7.  
  8.  
  9. int losowaLiczba(){
  10.     return rand()%100 + 1;
  11. }
  12.  
  13. void sortowanie_babelkowe(int *tab[],int n)
  14. {  
  15.   int *pom;
  16.  
  17.   for(int i=0;i<n;i++){
  18.  
  19.         for(int j=0;j<n-i-1;j++)
  20.             if(*tab[j]>*tab[j+1])
  21.             {
  22.               pom = tab[j];
  23.               tab[j] = tab[j+1];
  24.               tab[j+1] = pom;
  25.             }
  26.            
  27.             for(int e = 0 ; e < n; e ++){ //
  28.                 cout << *tab[e] << " "; //
  29.             } //
  30.             cout << endl; //
  31.     }
  32. }
  33.  
  34.  
  35. int main(int argc, char** argv) {
  36.  
  37.     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";
  38.  
  39.  
  40.     srand(time(NULL)); 
  41.     int tablica[10][10];
  42.    
  43.     cout<< "\n\nTablica z losowymi liczbami 1 - 100.\n-----------------------------------------------------------------------\n";
  44.    
  45.     for(int wiersz = 0; wiersz < 10; wiersz++){
  46.         for(int kolumna = 0; kolumna < 10; kolumna++){
  47.             tablica[wiersz][kolumna] = losowaLiczba();
  48.             cout << tablica[wiersz][kolumna] << " ";
  49.             if(tablica[wiersz][kolumna] <= 9) cout << " ";
  50.             if(tablica[wiersz][kolumna] <= 99 ) cout << " ";
  51.            
  52.         }
  53.         cout << endl << endl;
  54.    
  55.     }
  56.    
  57.     cout<< "\n\nTablica z zaznaczonymi liczbami podzielnymi przez [6].\n-----------------------------------------------------------------------\n";
  58.    
  59.     int liczba_podzielnych = 0;
  60.    
  61.     for(int wiersz = 0; wiersz < 10; wiersz++)
  62.         for(int kolumna = 0; kolumna < 10; kolumna++)
  63.             if(tablica[wiersz][kolumna] % 6 == 0) liczba_podzielnych++;
  64.    
  65.     int *podzielne[liczba_podzielnych];
  66.     int i = 0;
  67.    
  68.    
  69.     for(int wiersz = 0; wiersz < 10; wiersz++){
  70.         for(int kolumna = 0; kolumna < 10; kolumna++){
  71.             int sprawdzana_liczba = tablica[wiersz][kolumna];
  72.             if(sprawdzana_liczba%6 == 0){
  73.                 podzielne[i++] = &tablica[wiersz][kolumna];
  74.                 cout << "[";   
  75.             }else{
  76.                 cout << " ";
  77.             }  
  78.            
  79.             cout << tablica[wiersz][kolumna];
  80.            
  81.             if(sprawdzana_liczba%6 == 0) cout << "]";
  82.             else cout << " ";
  83.             cout << " ";
  84.             if(tablica[wiersz][kolumna] <= 9) cout << " ";
  85.             if(tablica[wiersz][kolumna] <= 99 ) cout << " ";
  86.            
  87.            
  88.            
  89.         }
  90.         cout << endl << endl;
  91.     }
  92.    
  93.     cout<< "\n\nLiczby podzielne przez 6 przed sortowaniem.\n-----------------------------------------------------------------------\n";
  94.    
  95.     for(int n = 0; n < liczba_podzielnych; n++){
  96.         if( *podzielne == 0) break;
  97.         cout << *podzielne[n] << "  ";
  98.     }
  99.    
  100.     cout<< "\n\n\nSortowanie.\n-----------------------------------------------------------------------\n";
  101.    
  102.     sortowanie_babelkowe(podzielne, liczba_podzielnych);
  103.    
  104.     cout<< "\n\nLiczby po sortowaniu.\n-----------------------------------------------------------------------\n";
  105.    
  106.    
  107.     for(int n = 0; n < liczba_podzielnych; n++){
  108.         if( *podzielne == 0) break;
  109.         cout << *podzielne[n] << "  ";
  110.     }
  111.    
  112.     ofstream plik_zapisu;
  113.     plik_zapisu.open("zaliczenie.txt");
  114.     plik_zapisu << endl;
  115.     for (int n = 0; n < liczba_podzielnych; n++){
  116.             plik_zapisu << *podzielne[n] << ", ";
  117.     }
  118.     plik_zapisu.close();
  119.    
  120.     cout << "\n\n\nWpisz cokolwiek i nacisnij enter by zakonczyc.";
  121.    
  122.     int stop;
  123.     cin >> stop;
  124.    
  125.     return 0;
  126. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement