folder Tahribat.com Forumları
linefolder Python
linefolder Python İle Sayıları Roma Rakamlarına Dönüştürme



Python İle Sayıları Roma Rakamlarına Dönüştürme

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cnr437
    cnr437's avatar
    Banlanmış Üye
    Kayıt Tarihi: 03/Nisan/2007
    Erkek

    dec2roman(7.515) şeklinde kullanılabilir, CNC için arayüze "egg" olsun eğlence olsun diye yazmıştım :), virgülden sonrası için normal roma rakamı algoritmasını kullandım.


    roman = ['M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I']
    decimal = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1]

    def dec2roman(number):
        romanvalue = ""
        if type(number) == float:
            integer,fractor = str(number).split('.')
            integer = int(integer)
            while len(fractor) > 3:
                fra = list(fractor)
                fra.pop()
                fractor = "".join(fra)
            fractor = int(fractor)
            return dec2roman(integer)+'.'+dec2roman(fractor)
        for i, d in enumerate(decimal):
            while (number >= d):
                number -= d
                romanvalue += roman[i]
        return romanvalue


     


    Bizim olduğumuz her yerde herşey bizim yüzümüzden olmuştur. Ben benim amk bana bişey olmasın!
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SSPPSS
    SSPPSS's avatar
    Kayıt Tarihi: 26/Ağustos/2007
    Erkek

    hocu python bilmiyorum, olayın mantığını anlamak için baktım koddandan bi şey anlamadım python bilmediğimden sanırım.

    sırasıyla 1000 e 500 e 100 e bölerekmi yapıyosun?

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    cnr437
    cnr437's avatar
    Banlanmış Üye
    Kayıt Tarihi: 03/Nisan/2007
    Erkek

    sırasıyla sayıdan roma rakamlarına denk gelen sayıları eksilterek yapıyor, eksilttiği sayıyı rakam olarak ekliyor,


    Bizim olduğumuz her yerde herşey bizim yüzümüzden olmuştur. Ben benim amk bana bişey olmasın!
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    erc
    erc's avatar
    Kayıt Tarihi: 23/Aralık/2010
    Erkek

    ben pek pythondan çakmam ama php ile yazdım


    <?php

    $birler = Array(" ","I","II","III","IV","V","VI","VII","VIII","IX");//birler basamağına denk gelecek diziler

    $onlar = Array(" ","X","XX","XXX","XL","L","LX","LXX","LXXX","XC");//onlar basamağına denk gelecek diziler

    $gelen=$_GET['sayi'];//bu kısımda kendi yapmış olduğum html sayfanın içindeki textboxtan sayı geliyor

    $y=0;//hesap yapacağım için değişkenleri sıfırlıyorum

    $x=0;//burda da aynısı

    if($gelen<0)//gelen sayının sıfırdan küçük olup olmadığını kontrol ediyorum

    {

    echo "eksi(-) değer giremezsiniz.";

    }

    else

    {

    if($gelen==0) {echo "sıfır yazdınız olmaz";}//bu kısımda gelen sayının sıfıra eşit olup olmadığını kontrol ediyorum

    }

     

    $y=$birler[$gelen%10];//burada sayıyı mod(10) olarak alıyorum

    $x=$onlar[$gelen/10];//burada gelen sayıyı ona bölüp,bölüm kısmını alıyorum

     

    echo $x . $y;//burda da yazdırıyorum

     

     

    ?>

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    moi
    moi's avatar
    Kayıt Tarihi: 26/Mayıs/2009
    Erkek
    erc bunu yazdı

    ben pek pythondan çakmam ama php ile yazdım


     

    99 dan sonrasi? :)


    Sadece paranoyaklar hayatta kalır...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    anarsistherif
    anarsistherif's avatar
    Kayıt Tarihi: 27/Ağustos/2009
    Erkek
    erc bunu yazdı

    ben pek pythondan çakmam ama php ile yazdım


     

    bende python kodlarını okurken, peeh phpde hemencecik kodlanır bu neymiş diyordum, benim gibi düşünen başka biri kodlamış bile :C

    edit: haci mantigin yanlis yav.

    anarsistherif tarafından 28/Eki/12 03:57 tarihinde düzenlenmiştir

    =)
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    erc
    erc's avatar
    Kayıt Tarihi: 23/Aralık/2010
    Erkek

    bir işi yapmanın birden fazla yolu vardır arkadaşım,99 meselesine gelince de örnek olsun benim yaptığım mantığı anlatmak için basit bir şey yaptım geliştirilebilir :)

Toplam Hit: 1655 Toplam Mesaj: 7