Şimdi Ara

C++ main.exe hatasi

Bu Konudaki Kullanıcılar:
2 Misafir - 2 Masaüstü
5 sn
7
Cevap
0
Favori
843
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • #include <iostream> 

    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    using namespace std;

    int main()
    {
    int x;
    cout<<"enter a number\n";
    cin>>x;
    if(x%3==0)
    if(x%2==0)
    cout<<x<<" is divisible by 6";
    else
    {
    cin>>x;
    if(x%3==0)
    if(x%!2==0)
    cout<<x<<" is divisible by 3";
    }
    else
    cout<<x<<" is not divisible by 3 and 6";




    return 0;
    }


    basit bir işlem ile başladim fakat 0 sıfıri nasil defined olabilecek hale getirecem birde 21 yazinca program main.exe hatasi veriyor nedendir acaba

    yardimlarinizi bekliyorum



  • ZemberekKuşu kullanıcısına yanıt
    0'ı defined hale getirmek derken? 0 girilirse ne olur diye soruyorsan
    if(x==0)
    cout<<"number is zero"<<endl;

    diyebilirsin.

    main.exe hatasının ne demek olduğunu tam anlamadım ama muhtemelen bir exception atıyor. o da ihtimal ki şundan:
    if(x%!2==0) yerine if(x%2!=0) olmalı.
    bir de else içinde x i niye bir daha alıyorsun ki? bi kere almışsın zaten.
  • kirmik K kullanıcısına yanıt
    hocam çaliştir diyince sadece zero yani sıfır değeri yok deniyor dediğiniz gibi onuda tanitinca sorun kalmiyor teşekkürler fakat

    21 için halen sorun devam ediyor her nedense
  • bilemedim...
    ama kod şöyle daha düzgün oldu. şu curly bracketları kullanmayı alışkanlık haline getirin bence yoksa kafa çok karışıyor

     
    #include <iostream>

    using namespace std;

    int main()
    {
    int x;
    cout<<"enter a number\n";
    cin>>x;
    if(x==0)
    {
    cout<<x<<" is zero";
    }
    else if(x%3==0)
    {
    if(x%2==0)
    {
    cout<<x<<" is divisible by 6";
    }
    else
    {
    cout<<x<<" is divisible by 3";
    }
    }
    else
    {
    cout<<x<<" is not divisible by 3 and 6";
    }

    return 0;
    }
  • kirmik K kullanıcısına yanıt
    hocam peki rahatsiz ediyorumda son birşey sorucam

    bracketları kullanmişsinizda onlari single statement lar icin kullanmak mantikli mi single icin kullanilmayin diye vurguladi bizim hoca
  • vallahi kullanmanıza gerek yok. ama şahsi düşüncem okunabilirliği zorlaştırdığı yönünde. tabi ki şöyle bir şey varsa sadece kodun x bir yerinde:

    if(x==0)
    return 0;

    o kadar da gerek yok. ama özellikle iç içe ifler varsa, sonra else falan varsa o zaman kafa karışıyor. hadi bakalım bu else acaba ilk if'e mi ait oluyordu, yoksa ikinci if'e mi falan gibi.
    tamamen hakimsen ve kafan karışmıyorsa tamam ancak herkes öyle olmayabilir veya sen de alışkanlıklarını değiştirebilirsin zamanla. bu nedenle okunabilirlik önemli. bir kod 1 defa yazılır ama n defa okunur çoğu zaman.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.