Neler yeni
Türkiye'nin En Güncel Forum Sitesi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı yada giriş yapmalısınız. Forum üye olmak tamamen ücretsizdir.

C de formülden yola çıkarak mükemmel sayıları hızlıca bulmak

ByOnur58

Kayıtlı Üye
MFC Üyesi
  • Üyelik Tarihi
    7 Ocak 2015
  • Mesajlar
    2,113
  • MFC Puanı
    10
  • MFC Seviyesi



Kod:
#include <stdio.h>
#include <math.h>
bool asalmi(int sayi)
{
if(sayi==2)
return true;
int a=ceil(pow(sayi,1.0/2.0));
for(int i=2;i<=a;i++)
{
 if(sayi%i==0)
 return false;
}
return true;
}


**** mukemmelmi(int sayi,int us)
{
int k=0;
for(int i=1;i<sayi;i++)
{
if(sayi%i==0)
k+=i;

}
if(k==sayi)
printf("%d ----> 2^%d(2^%d-1)\n",sayi,us,us+1);
}

main()
{
int i=1;
int us1,us2;                  
while(i<=20)//buffer overflow engellemek için sonsuza kadar ***ürüp kendiniz deneyebilirsiniz
{

 us2=pow(2,i+1)-1;
if(asalmi(i+1)&&asalmi(us2))
{
 us1=pow(2,i);
 mukemmelmi(us1*us2,i);
}
 i++;
}
}
 
Üst Alt