Witam, mam taki problem, otóż mam za zadanie napisać program, który sprawdza czy dana liczba jest liczbą doskonałą. Posługując się algorytmem danym w zadaniu napisałem coś takiego :
#include <iostream> #include <conio.h> #include <math.h> using namespace std; int main() { int n, p, p1, suma=0; cout << "Podaj liczbe ktora chcesz sprawdzic :"; cin >> n; p = sqrt((double)n); while (p > 1) { if (n%p == 0) { suma = suma + p; p1 = n / p; if (p1 != p) { suma = suma + p1; } } else { p = p - 1; } } if(p<=1) { suma = suma + 1; if (suma==n) { cout << "Jest to liczba doskonala"; } else { cout << "To nie jest liczba doskonala"; } } _getch(); }
Po wpisaniu liczby n program po prostu przechodzi do następnej linijki i nic się nie dzieje. Nie do końca wiem o co chodzi. Z góry dzięki za pomoc.
Pozdawiam