Merhaba arkadaşlar biraz acil olarak c++ da olursa iyi olur ama c# da falan yapabilen olursada sorun yok .. İstediğim kullanıcıdan bir sayı alınacak örneğin 728 bunun asal çarpanlarını bulup onları toplaması gerekiyor örneğin 728=2*2*2*7*13 olduğunu bulacak ve 2+2+2+7+13=26 sonucunu vermesi gerekiyor nasıl yapabilirim
Fonksiyon olarak yazmıştım hocam. Anlamadığın yer varsa sorabilirsin.
int perfect(int x){
int b,i,geri,toplam=0;
b=floor(x/2); // sayının yarısını alıyor. 100 yarısı 50'dir. 99 yarısı 49.5'tur ama floor ile 49 kabul ederek sıkıntısız çarpanları bulabiliriz.
for(i=1;i<b+1;i++)
{
if( x%i==0 )
toplam+=i; //çarpanları mod=0 ile bulduk ve toplam değişkeninde sakladık. 10 sayısı için 1+2+5 = 8 = toplam gibi.
}
if(toplam==x)
geri=1;
else
geri=0;
return geri;