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.

Sayıların Obeb ve Okek ini Bulan C Programı

ByOnur58

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

Kod:
#include<stdio.h>
  
#include<stdlib.h>
  
int obeb(int,int);
int okek(int,int);
int main()
{
int x,y;
 
printf("Iki pozitif tamsayi giriniz\n");
scanf("%d%d",&x,&y);
printf("Obeb(%d,%d)=%d\n",x,y,obeb(x,y));
printf("Okek(%d,%d)=%d\n",x,y,okek(x,y));
 
system("pause");
return 0;
}
int obeb(int a,int b)
{
int obeb=1,i=2;
while(!(a==1||b==1))
{
while(a%i==0||b%i==0)
{
if(a%i==0&&b%i==0)
{
a/=i;
b/=i;
obeb*=i;
}
else if(a%i==0)
a/=i;
else if(b%i==0)
b/=i;
}//ikinci while ın sonu
(i%2)?i+=2:i++;
/*Bu ifade i%2 değeri 1 olunca(doğru olunca) i+=2(i=i+2) ifadesini,
i%2 değeri 0 olunca(yanlış olunca) i++(i=i+1) iafdesini çalıştırıyor.
Böylece i değeri 2 den sonra 3 değerini alıyor ve daha sonrasında 2 şer 2 şer artıyor.
(i=2,3,5,7,9,.....)*/
}//birinci while ın sonu
 
return obeb;
}
int okek(int a,int b)
{
int okek=1,i=2;
while(!(a==1&&b==1))
{
while(a%i==0||b%i==0)
{
if(a%i==0&&b%i==0)
{
a/=i;
b/=i;
okek*=i;
}
else if(a%i==0)
{
a/=i;
okek*=i;
}
else if(b%i==0)
{
b/=i;
okek*=i;
}
}//ikinci while ın sonu
(i%2)?i+=2:i++;
}//birinci while ın sonu
 
return okek;
}
 
Üst Alt