Perfect numbers: Difference between revisions

Content deleted Content added
added ocaml
Ulrie (talk | contribs)
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>