Perfect numbers: Difference between revisions
Content deleted Content added
added ocaml |
No edit summary |
||
Line 89: | Line 89: | ||
return 0; |
return 0; |
||
} |
|||
</lang> |
|||
=={{header|C++}}== |
|||
for gcc/g++ |
|||
<lang C++> |
|||
#include <iostream> |
|||
using namespace std ; |
|||
bool is_perfect( int ) ; |
|||
int main( ) { |
|||
cout << "Perfect numbers from 1 to 33550337:\n" ; |
|||
for ( int num = 1 ; num < 33550337 ; num++ ) { |
|||
if ( is_perfect( num ) ) |
|||
cout << num << '\n' ; |
|||
} |
|||
return 0 ; |
|||
} |
|||
bool is_perfect( int number ) { |
|||
int sum = 0 ; |
|||
for ( int i = 1 ; i < number + 1 ; i++ ) |
|||
if ( number % i == 0 ) |
|||
sum += i ; |
|||
return ( ( sum == 2 * number ) || ( sum - number == number ) ) ; |
|||
} |
} |
||
</lang> |
</lang> |