1 ile 10000 arasındaki mükemmel sayıları tespit ettikten sonra bulunan mükemmel sayıları ekrana yazdıran fonksiyonu kodlayacağız. Ekrana yazı yazdırmak için bu konuyu inceleyebilirsiniz.
Mükemmel sayı, sayının kendisi hariç tüm bölenlerinin toplamının kendisine eşit olduğu sayılardır. Bu kuralı göz önünde bulundurarak şimdi Java, C#, C++ ve Python dillerinde programı kodlayalım.
Java Mükemmel Sayı Fonksiyonu
public class YazilimMuhendisim
{
public static void main(String[] args) {
for(int i=1; i<10000; i++){
if(isPerfectNumber(i)){
System.out.println(i);
}
}
}
public static boolean isPerfectNumber(int number){
int divisors = 0;
for(int i=1; i<number; i++){
if(number%i==0){
divisors += i;
}
if(divisors > number){
break;
}
}
return divisors == number;
}
}
C# Mükemmel Sayı Fonksiyonu
using System;
class YazilimMuhendisim {
static void Main() {
for(int i=1; i<10000; i++){
if(isPerfectNumber(i)){
Console.WriteLine(i);
}
}
}
static bool isPerfectNumber(int number){
int divisors = 0;
for(int i=1; i<number; i++){
if(number%i==0){
divisors += i;
}
if(divisors > number){
break;
}
}
return divisors == number;
}
}
C++ Mükemmel Sayı Fonksiyonu
#include <iostream>
using namespace std;
bool isPerfectNumber(int number){
int divisors = 0;
for(int i=1; i<number; i++){
if(number%i==0){
divisors += i;
}
if(divisors > number){
break;
}
}
return divisors == number;
}
int main()
{
for(int i=1; i<10000; i++){
if(isPerfectNumber(i)){
cout << i << endl;
}
}
return 0;
}
Python Mükemmel Sayı Fonksiyonu
def isPerfectNumber(number):
divisors = 0
for i in range(1,number):
if number%i==0:
divisors += i
if divisors > number:
break
return divisors == number
for i in range(1,10000):
if isPerfectNumber(i):
print(i)