MeehoweCK

Untitled

Apr 6th, 2023
643
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.35 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstdlib>
  3. #include <ctime>
  4.  
  5. using namespace std;
  6.  
  7. // zadanie 4.
  8.  
  9. const int N = 10;
  10.  
  11. int suma_cyfr(int liczba)
  12. {
  13.     int suma = 0;
  14.  
  15.     while(liczba > 0)
  16.     {
  17.         suma += (liczba % 10);      // do sumy dodaj resztę z dzielenia aktualnej wartości liczby przez 10
  18.         liczba /= 10;               // podziel liczbę przez 10 (bez ułamków)
  19.     }
  20.     return suma;
  21. }
  22.  
  23. void wypelnij_tablice(int* tablica)
  24. {
  25.     srand(time(nullptr));   // ustawienie parametru losowania
  26.     for(int i = 0; i < N; ++i)
  27.         tablica[i] = rand();        // przypisanie do tablica[i] liczby losowej z zakresu od 1 do 32767
  28. }
  29.  
  30. void wypisz_tablice(int* tablica)
  31. {
  32.     for(int i = 0; i < N; ++i)
  33.         cout << tablica[i] << '\t';     // wypisanie wartości tablica[i] na ekran
  34.     cout << endl;
  35. }
  36.  
  37. void sortuj(int* tablica)
  38. {
  39.     for(int i = 0; i < N - 1; ++i)
  40.         for(int j = 0; j < N - i - 1; ++j)
  41.             if(suma_cyfr(tablica[j]) > suma_cyfr(tablica[j + 1]))       // jeżeli suma cyfr liczby tablica[j] jest większa od sumy cyfr liczby tablica[j + 1]
  42.                 swap(tablica[j], tablica[j + 1]);
  43. }
  44.  
  45. int main()
  46. {
  47.     int tablica[N];     // tworzę tablicę 10-elementową
  48.     wypelnij_tablice(tablica);
  49.     wypisz_tablice(tablica);
  50.     sortuj(tablica);
  51.     wypisz_tablice(tablica);
  52.     return 0;
  53. }
Advertisement
Add Comment
Please, Sign In to add comment