Ondalıklı Sayıyı Kesre Dönüştürme

Kurtbeyi

Misafir Editör
Katılım
5 Şubat 2022
Mesajlar
501
Tepkime puanı
44
Konum
istanbul
Cinsiyet
  1. Bay
Takım
Fenerbahçe
Kod:
//Ondalıklı sayıyı kesre dönüştürme
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
int obeb(int,int);
int main()
{
   int a,b,t;double us,c;
    printf("Bir ondalikli sayi giriniz\n");
    scanf("%lf",&c);
    //tam kısımda 3 basamak için
    if(c>100&&c<1000)
    {
    us=pow(10,5);
    a=c*us;b=us;
    }
    //tam kısımda 2 basamak için
    else if(c>1)
    {
    us=pow(10,7);
    a=c*us;b=us;
    }
    //0 ile 1 aralığındaki ondalıklı sayılar için
    else{
    us=pow(10,9);
    a=c*us;b=us;
    }
    if(a%10==9)
    a++;/*Bazı ondalıklı sayıları çevirirken sonu 9 devrediyor şeklinde çevirdiği için
    bu ifadeyi ekledik.Mesela bu ifade olmadığı durumda 0.12 ifadesini 119999999/100000000
    şeklinde çeviriyor.*/
    t=obeb(a,b);
    printf("%f=%d/%d\n\n",c,a/t,b/t);
  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++;/*i%2 değeri 1 olduğunda i nin 2 artması
       i%2 değeri 0 olduğunda i nin 1 artması için*/
    }//birinci while ın sonu
    return obeb;
}
 

Benzer konular

İçerik sağlayıcı "paylaşım" sitelerinden biri olan Harbimekan.Com Forum, Eğlence ve Güncel Paylaşım Platformu Adresimizde 5651 Sayılı Kanun’un 8. Maddesine ve T.C.K’nın 125. Maddesine göre TÜM ÜYELERİMİZ yaptıkları paylaşımlardan sorumludur. Harbimekan.Com sitesindeki konular yada mesajlar hakkında yapılacak tüm hukuksal Şikayetler için info@harbimekan.com yada iletişim sayfası üzerinden iletişime geçilmesi halinde ilgili kanunlar ve yönetmelikler çerçevesinde en geç 3 Gün (72 Saat) içerisinde Forum yönetimi olarak tarafımızdan gereken işlemler yapılacaktır.

Bu Site, Bilim ve Sağlık Haber Ajansı Üyesidir.

Yığıntı - 8kez - kaynak mağazam - Uğur Ağdaş