Hiya, monks
I'm trying to write this program that finds perfect numbers from a range of 1-10000. I already had a program that found that factors of integers, and since all a perfect number is is a number that, when added up, equals the sum of its factors.
Here is my attempt:@numbers = (1..10000); foreach $number (@numbers) { for ($count = 1; $count <=10000; $count++) { $result = $number / $count; unless ($result =~ /\./) { push (@factor, $result); } } } foreach $thing (@factor) { if ($result==$thing) { my @perfectnumbers = ( ); push (@perfectnumbers, $result); } } foreach (@perfectnumbers) { print "$_\n"; }
What i wanted to do was to get all the factors of every integer from 1 to 10000 and then when the integer equaled its factors, it would push it into the array. My problem lies in the fact that i'm not sure how to make perl do this. I also think that there are some problems with my factors.
In reply to finding perfect numbers by derpp
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |