Advertisement
MeehoweCK

Untitled

May 6th, 2023
588
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.86 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. // wersja "profesjonalna":
  6. unsigned suma_dzielnikow_wlasciwych(unsigned n)
  7. {
  8.     if (n == 1)
  9.         return 0;
  10.     unsigned suma = 1;
  11.     unsigned i;
  12.  
  13.     for (i = 2; i * i < n; ++i)
  14.         if (n % i == 0)
  15.             suma += (i + n / i);
  16.  
  17.     if (i * i == n)
  18.         suma += i;
  19.  
  20.     return suma;
  21. }
  22.  
  23. void wypisz_liczby_zaprzyjaznione(unsigned n)
  24. {
  25.     cout << "Pary liczb zaprzyjaznionych mniejszych od " << n << ":\n";
  26.  
  27.     for (unsigned a = 2; a < n; ++a)
  28.     {
  29.         unsigned b = suma_dzielnikow_wlasciwych(a);
  30.         if (b < n && b > a)
  31.             if (a == suma_dzielnikow_wlasciwych(b))
  32.                 cout << a << '\t' << b << endl;
  33.     }
  34.  
  35. }
  36.  
  37. int main()
  38. {
  39.     unsigned n;
  40.     cout << "Podaj liczbe naturalna: ";
  41.     cin >> n;
  42.  
  43.     wypisz_liczby_zaprzyjaznione(n);
  44.  
  45.     return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement