folder Tahribat.com Forumları
linefolder C - C++
linefolder C Yanyana Karışık Bir İşlem (Yardım)



C Yanyana Karışık Bir İşlem (Yardım)

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    OnLyGoDCaNStoPMe
    OnLyGoDCaNStoPMe's avatar
    Kayıt Tarihi: 24/Mart/2010
    Erkek

    int x=1, y=2, z=3, t=4;
    void main() {
    x = 3 + (t*=y+=z-=t+2)-7 + -y; // burayı çözemedim
    printf("%d %d %d %d", x, y, z, t);
    }

    (t*=y+=z-=t+2) Burayı nasıl hesaplayamam gerektiğini bir türlü çözemedim.Bunları daha kolay nasıl çzöebilirim?Nasıl gruplandırabilirim çıkarmak için?

    ilkten başlarıyorum t=t*y oluyor fakat yanındaki +=z yi nasıl hesaba katmalıyım ?

     

     

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SinusX
    SinusX's avatar
    Kayıt Tarihi: 14/Aralık/2010
    Erkek

    c de hesaplar sağdan sola olması gerekiyordu sanırım


    Si vis pacem para bellum.
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    OnLyGoDCaNStoPMe
    OnLyGoDCaNStoPMe's avatar
    Kayıt Tarihi: 24/Mart/2010
    Erkek

    SinusX bunu yazdı:
    -----------------------------

    c de hesaplar sağdan sola olması gerekiyordu sanırım


    -----------------------------

    sağdan sola şeklinde düşündüm gene çıkamadım hatta tersinide düşündüm soldan sağa dogru başlayamadım

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Ercan
    Ercan's avatar
    Kayıt Tarihi: 04/Temmuz/2008
    Erkek

    işlemini bilmediğimden (önce hangi işlemi yapıcağını) direk sorunun cevabını buraya yazamıyorum, ama hatanın sebebi tek satırda sadace bir tane atama yapılır(yani tek eşittir) sağdan sola doğru...


    IF YOU ARE NOT TİRED, YOU ARE NOT DOING IT RIGHT
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Lathedarkman
    Lathedarkman's avatar
    Kayıt Tarihi: 05/Mayıs/2007
    Erkek

    (t=t*(y=y+(z=z-(t+2))))

    olarak dene

    hata verirse

    z=z-(t+2);

    y=y+z;

    t=t*y;

    x=3+t-7-y;

     

  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    OnLyGoDCaNStoPMe
    OnLyGoDCaNStoPMe's avatar
    Kayıt Tarihi: 24/Mart/2010
    Erkek

    Lathedarkman bunu yazdı:
    -----------------------------

    (t=t*(y=y+(z=z-(t+2))))

    olarak dene

    hata verirse

    z=z-(t+2);

    y=y+z;

    t=t*y;

    olarak yap


    -----------------------------

    ilk yazdığın oldu süpersin hocam çok teşekkür ederim :)

  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    mindfog
    mindfog's avatar
    Kayıt Tarihi: 15/Temmuz/2011
    Erkek

    SinusX bunu yazdı:
    -----------------------------

    c de hesaplar sağdan sola olması gerekiyordu sanırım


    -----------------------------

    C'de kesin bir siralama yoktur, compiler yazanlara birakilmistir. Ornegin 1+3+4; (1+3)+4 veya (4+3)+1 veya (1+4)+3 olarak islem gorebilir.

Toplam Hit: 1407 Toplam Mesaj: 7