Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include<math.h>
- int dziel(int y) // Sumuje dzielniki danej liczby
- {
- int x;
- int wynik = 0;
- for (x = 1; x < y; x++)
- {
- if(y % x == 0)
- {
- wynik = wynik + x;
- }
- }
- return wynik;
- }
- int main()
- {
- int n, m, a, b, s;
- printf ("Program sprawdza czy liczba jest doskonala oraz czy para liczb jest przyjazniona\n");
- printf ("Program wypisuje rowniez wszystkie liczby doskonale oraz wszystkie pary liczb zaprzyjaznionych mniejsze od 1000\n");
- printf ("Jesli chcesz sprawdzic:\n1.\tliczba doskonala\n2.\tpara liczb przyjazniona\n3.\twszystkie liczby doskonale mniejsze od 1000\n4.\twszystkie pary liczb zaprzyjaznionych\n\n(Wybranie danej liczby powoduje, ze wszystkie poprzednie zadania nie zostana wykonane)\n");
- scanf ("%d", &s);
- switch (s)
- {
- case 1:
- printf ("Podaj liczbe:\n");
- scanf ("%d", &n);
- a = dziel (n);
- if (a == n) // sprawdza czy suma dzielników jest równa liczbie
- {
- printf("Ta liczba jest liczba doskonala\n");
- }
- else
- {
- printf("Ta liczba nie jest liczba doskonala\n");
- }
- case 2:
- printf ("\nPodaj pierwsza liczbe:\n");
- scanf ("%d", &n);
- printf ("Podaj druga liczbe:\n");
- scanf ("%d", &m);
- a = dziel (n);
- b = dziel (m);
- if (m != n && a == m && b == n) // sprawdza czy suma dzielników jednej liczby jest równa drugiej liczbie i na odwrót
- {
- printf("Ta para liczb jest liczba przyjazniona\n");
- }
- else
- {
- printf("Ta para liczb nie jest liczba przyjazniona\n");
- }
- case 3:
- printf ("\nLiczby doskonale do 1000\n");
- int o;
- for (o = 1; o < 1000; o++)
- {
- if (dziel (o) == o) // wypisuje liczby do 1000 których suma dzielników jest równa liczbie
- {
- printf ("%d\n", o);
- }
- else
- {
- }
- }
- case 4:
- printf ("\nLiczby zaprzyjaznione do 1000\n");
- int p, r;
- for (p = 1; p < 1000; p++) // wypisuje pary liczb których suma dzielników jednej jest równa drugiej liczbie i na odwrót
- {
- for (r = 1; r < 1000; r++)
- {
- if (p != r && dziel (p) == r && dziel(r) == p)
- {
- printf ("%d\t%d\n", p, r);
- }
- else
- {
- }
- }
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement