Örnek :
Kendisine verilen iki sayının OBEB (Ortak Bölenlerin En Büyüğü) değerini hesaplayıp, geriye döndüren fonksiyonu yazınız.
// Verilen iki sayının OBEB’ini bulan fonksiyon
int obeb_bul( int sayi_1, int sayi_2 )
{
int obeb = 1;
int bolen = 2;
while( sayi_1 > 1 || sayi_2 > 1 ) {
// Sayilardan her ikiside, bolen
// degiskenine bolundugu takdirde,
// obeb hesabina katilir.
if( sayi_1 % bolen == 0 &&
sayi_2 % bolen == 0 ) {
obeb *= bolen;
sayi_1 /= bolen;
sayi_2 /= bolen;
}
else if( sayi_1 % bolen == 0 ) {
sayi_1 /= bolen;
}
else if( sayi_2 % bolen == 0 ) {
sayi_2 /= bolen;
}
else {
bolen++;
}
}
return obeb;
}
Örnek :
Kendisine verilen iki sayının OKEK (Ortak Katların En Küçüğü) değerini hesaplayıp, geriye döndüren fonksiyonu yazınız.
// Verilen iki sayının okekini bulan fonksiyon
int okek_bul( int sayi_1, int sayi_2 )
{
int okek = 1;
int bolen = 2;
while( sayi_1 > 1 || sayi_2 > 1 ) {
// Sayilardan her ikiside, bolen
// degiskenine bolunuyorsa
if( sayi_1 % bolen == 0 &&
sayi_2 % bolen == 0 ) {
okek *= bolen;
sayi_1 /= bolen;
sayi_2 /= bolen;
}
// Sayilardan ilki, bolen
// degiskenine bolunuyorsa
else if( sayi_1 % bolen == 0 ) {
okek *= bolen;
sayi_1 /= bolen;
}
// Sayilardan ikincisi, bolen
// degiskenine bolunuyorsa
else if( sayi_2 % bolen == 0 ) {
okek *= bolen;
sayi_2 /= bolen;
}
else {
bolen++;
}
}
return okek;
}








ile görüntülenir.
Yorum Yazın