Şimdi Ara

silinsin lütfen

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
4
Cevap
1
Favori
132
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • konu silinirse memnun olurum

    Program sayıyı yazıya çeviriyor fakat negatif sayılarda eksi deyip kalıyor. Mesela 4 yazınca dört çıkıyor ama -4 yazınca eksidört yazmıyor eksi deyip bırakıyor. hatam nerede arkadaşlar ?

    Kodlar:
    #include <iostream>
    using namespace std;
    int main()
    {
    int a,bb,ob,yb,ib,nb,zb,mb;//bb birler basamağı demek
    while (5){
    cout << "\n[10milyon-1] ile 1 arasi bir sayi giriniz:\n";
    cin >>a;
    a<0 ? cout<<"eksi" : cout <<"";
    mb=a%10000000;

    if (mb>=1000000 && mb<2000000){cout << "bir";}
    if (mb>=2000000 && mb<3000000){cout << "iki";}
    if (mb>=3000000 && mb<4000000){cout << "uc";}
    if (mb>=4000000 && mb<5000000){cout << "dort";}
    if (mb>=5000000 && mb<6000000){cout << "bes";}
    if (mb>=6000000 && mb<7000000){cout << "alti";}
    if (mb>=7000000 && mb<8000000){cout << "yedi";}
    if (mb>=8000000 && mb<9000000){cout << "sekiz";}
    if (mb>=9000000 && mb<10000000){cout << "dokuz";}
    if (mb>=1000000 && mb<10000000){cout<<"milyon";}

    zb=a%1000000;
    if (zb>=200000 && zb<300000){cout << "iki";}
    if (zb>=300000 && zb<400000){cout << "uc";}
    if (zb>=400000 && zb<500000){cout << "dort";}
    if (zb>=500000 && zb<600000){cout << "bes";}
    if (zb>=600000 && zb<700000){cout << "alti";}
    if (zb>=700000 && zb<800000){cout << "yedi";}
    if (zb>=800000 && zb<900000){cout << "sekiz";}
    if (zb>=900000 && zb<1000000){cout << "dokuz";}
    if (zb>=100000 && zb<1000000){cout<<"yuz";}

    nb=a%100000;
    if (nb>=10000 && nb<20000){cout << "on";}
    if (nb>=20000 && nb<30000){cout << "yirmi";}
    if (nb>=30000 && nb<40000){cout << "otuz";}
    if (nb>=40000 && nb<50000){cout << "kirk";}
    if (nb>=50000 && nb<60000){cout << "elli";}
    if (nb>=60000 && nb<70000){cout << "altmis";}
    if (nb>=70000 && nb<80000){cout << "yetmis";}
    if (nb>=80000 && nb<90000){cout << "seksen";}
    if (nb>=90000 && nb<100000){cout << "doksan";}
    ib=a%10000;
    if (ib>=2000 && ib<3000){cout << "iki";}
    if (ib>=3000 && ib<4000){cout << "uc";}
    if (ib>=4000 && ib<5000){cout << "dort";}
    if (ib>=5000 && ib<6000){cout << "bes";}
    if (ib>=6000 && ib<7000){cout << "alti";}
    if (ib>=7000 && ib<8000){cout << "yedi";}
    if (ib>=8000 && ib<9000){cout << "sekiz";}
    if (ib>=9000 && ib<10000){cout << "dokuz";}
    if (ib>=1000 && ib<1000000){cout<<"bin";}
    yb=a%1000;
    if (yb>=200 && yb<300){cout << "iki";}
    if (yb>=300 && yb<400){cout << "uc";}
    if (yb>=400 && yb<500){cout << "dort";}
    if (yb>=500 && yb<600){cout << "bes";}
    if (yb>=600 && yb<700){cout << "alti";}
    if (yb>=700 && yb<800){cout << "yedi";}
    if (yb>=800 && yb<900){cout << "sekiz";}
    if (yb>=900 && yb<1000){cout << "dokuz";}
    if (yb>=100 && yb<1000){cout<<"yuz";}
    ob=a%100;
    if (ob>=10 && ob<20){cout << "on";}
    if (ob>=20 && ob<30){cout << "yirmi";}
    if (ob>=30 && ob<40){cout << "otuz";}
    if (ob>=40 && ob<50){cout << "kirk";}
    if (ob>=50 && ob<60){cout << "elli";}
    if (ob>=60 && ob<70){cout << "altmis";}
    if (ob>=70 && ob<80){cout << "yetmis";}
    if (ob>=80 && ob<90){cout << "seksen";}
    if (ob>=90 && ob<100){cout << "doksan";}
    bb=a%10;
    if (bb==1){cout << "bir";}
    if (bb==2){cout << "iki";}
    if (bb==3){cout << "uc";}
    if (bb==4){cout << "dort";}
    if (bb==5){cout << "bes";}
    if (bb==6){cout << "alti";}
    if (bb==7){cout << "yedi";}
    if (bb==8){cout << "sekiz";}
    if (bb==9){cout << "dokuz";}

    }
    }



    < Bu mesaj bu kişi tarafından değiştirildi muhammet484 -- 29 Nisan 2021; 6:25:19 >
    < Bu ileti mobil sürüm kullanılarak atıldı >







  • Programınızdaki karşılaştırmaları hep pozitif sayılarla yaptığınız için öyle oluyor.

    a<0 ? cout<<"eksi" : cout <<"";

    Yukarıdaki komuttan sonra sayı sıfırdan küçükse -1 ile çarpıp onu da pozitif yapmalısınız. Ondan sonra karşılaştırmalarınız çalışır. Öncesinde zaten negatif ise eksi ifadesini yazdırmış olacaksınız. Geriye kalan kısmın okunuşu pozitif sayıyla aynı.

    eğer mb<0 ise mb = -1 * mb ya da mb *= -1



    < Bu mesaj bu kişi tarafından değiştirildi hyrgul -- 18 Haziran 2019; 19:13:16 >
  • hyrgul H kullanıcısına yanıt
    Çok teşekkür ederim hocam

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.