Mükemmel Sayı – Algoritma Örnekleri Java #1

Mükemmel sayı nedir?

Sayının kendisi dışında pozitif tam sayı bölenlerinin toplamı, sayının kendisine eşit ise sayı mükemmel sayıdır.

Örnek verecek olursa 6 sayısı bir mükemmel sayıdır.
Pozitif tam sayı bölenleri 1,2 ve 3. Bu sayıların toplamı ise sayının kendisi yani 6’dır.

Bizim sorumuzda 10.000’e kadar olan mükemmel sayıların toplamını soruyoruz.


Çözüm:

Öncelikle sayımızın, pozitif tam sayı bölenlerinin toplamını bulmak için methodumuzu tanımlıyoruz. For döngüsünü kullanarak o anki sayıya kadar birden başlayıp sayıdaki modunu alıyoruz ve mod değeri sıfır ise sum değişkenimize ekliyoruz. For döngüsü bittikten sonra sum değerimizi döndürüyoruz. Main methodumuzda ise for döngümüzü birden on bine kadar kuruyoruz ve herbir değer için fonk methodumuza sokup dönen değer ile eşitliğini karşılaştırıyoruz eğer eşit ise counter değişkeni ile sayımızı topluyoruz. Döngümüz bittikten sonra counter’ı yazdırıyoruz.

public class MukemmelSayi {
    public static int fonk(int x) {
        int sum=0;
        for (int i = 1; i < x; i++) {
            if (x % i == 0)
            sum += i;
        }
        return sum;
    }
    public static void main(String arg[]) {
        int counter=0;
        for(int i=0;i<10000;i++){
            if(i==fonk(i)){
                counter+=i;
                
            }
        }
        System.out.println(counter);
    }
}


Tahsin ALTINTAŞ

Computer science 4 life mottosuyla yola çıkmış bir bilgisayar mühendisi.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir