2014-10-10 54 views
-1

我需要編寫一個if語句,當int d在整數的10%範圍內時,我返回字符串「Close String」。這是我現在有:如果語句與其他整數的百分比整數有關

public String game(double d, double e) { 
    if((d>=.95*e)||(d<=e*1.05)) { 
     return "close string"; 
    } else { 
     return "other"; 
    } 
} 

測試用例

String game = game(100.0d, 90.0d); 
    System.out.println(game); 
    game = game(100.0d, 99.0d); 
    System.out.println(game); 
    game = game(100.0d, 100.0d); 
    System.out.println(game); 

預期輸出

other 
close string 
close string 

電流輸出

close string 
close string 
close string 

錯誤在哪裏?

+0

問題是什麼? – 2014-10-10 13:32:38

+2

什麼是'b' undeclare變量? – Milaci 2014-10-10 13:35:58

+0

什麼是b?,甚至沒有在函數中定義,你確定它編譯? – 2014-10-10 13:36:31

回答

3

我不確定你在問什麼,但我想你想要而不是或。

(a>=.95*b)||(a<=b*1.05) 

a可以是任何數字,因爲它會比b高出5%,或低於b 5%,只要它是實數。

(a>=.95*b)&&(a<=b*1.05) 

僅可在+或 - 5%