• 19-10-2017, 14:56:21
    #1
     ksi = Net1 + Net2;            if(ksi > 1) {  ksi = 100; }else if(ksi > 2) {  ksi = 99; }else if(ksi > 3)  { ksi = 98; } else { ksi = 200;}
    test yazılımı için hazırlıyorum, teste 100-200 kişi giriyor ancak Sonuç hep 100 çıkıyor, 2 nette 100,3 nette 100, 4 nette 100aslında bu kodlarla 2 nette 100., 3 nette 99., 4 nette 98. gibi olması gerekiyor. Birde aralıklı olursa nasıl olacak, yani 4,5 net veya 4,25 net gibinerede hata yapıyorum?2 net yapan 100. kişi3 net yapan 99. kişi....
  • 19-10-2017, 15:06:16
    #2
    Kod akışı sayfanın yukarısından aşağıya doğru olduğu için ilk şart neyse onu döndürür. Ayrıca else if kullanımında şart tutarsa kodu geri kalanına bakmaz.
  • 19-10-2017, 15:10:56
    #4
    if(ksi > 4) {  ksi = x }else if(ksi > 3) {  ksi = x }else if(ksi > 2)  { ksi = x } else { ksi = x}
    İlk koşula yazdığın ifade diğerlerini de kapsıyor bu yüzden büyükten başlaman gerek.
  • 19-10-2017, 15:12:57
    #5
    if(ksi > 1) { ksi = 100; }else if(ksi > 2) { ksi = 99; }else if(ksi > 3) { ksi = 98; } else { ksi = 200;}

    ksi 1 den büyük değer alınca ksi = 100 oluyor koşul sonlanıyor hocam.Else if'e geçmiyor hiç yani.
    1<ksi kücük eşit 2 dersen bu sorunu çözersin tabi diğerlerinide buna göre düzenlemek gerek.