Mükemmel Sayı – Algoritma Örnekleri C programlama #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 mukemmel_mi fonksiyonumuzu tanımlıyoruz. For döngümüzde 1’den başlayarak sayının kendisine kadar olan sayıların, sayıda modunu alıyoruz. Sonuç sıfıra eşit ise bu değer sayımızın bir bölenidir ve bu böleni sum değişkenine ekliyoruz. Döngümüz bittikten sonra sayımızın pozitif tam sayı bölenlerini veren sum değerini döndürüyoruz. Ardından main fonksiyonumuzda 1’den 10.00’e kadar for döngümüzü kuruyoruz ve o anki sayı ile fonksiyondaki değeri eşit ise sayımız mükemmel sayı oluyor ve bu değerleri topluyoruz. En sonunda ise toplamımızı yazdırıyoruz.

Kod:


#include <stdio.h>
#include <stdlib.h>

int main(void)
{
int main_sum=0;
for(int i=1;i<10000;i++){
if(i==mukemmel_mi(i)){
main_sum+=i;
}
}
printf("%d",main_sum);
}

int mukemmel_mi(int x){
int sum=0;
for(int i=1;i<x;i++){
if(x%i==0){
sum+=i;
}
}
return sum;
}



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