2013-10-30 52 views
3

有一些我試圖修復一遍又一遍,但我不能。使用無效參數

所以程序要求用戶爲3號的,然後詢問自己想要加的,那麼這些數字的百分比去一個void方法:

因此,它是這樣的:

public static void main(String[] args) { 

     System.out.print("Number 1: "); 
     X1 = s.nextLong(); 
     System.out.print("Number 2: "); 
     W1 = s.nextLong(); 
     System.out.print("Number 3: "); 
     Z1 = s.nextLong(); 

     System.out.print("Percentage 1: "); 
     int a = s.nextInt(); 
     System.out.print("Percentage 2: "); 
     int b = s.nextInt(); 
     System.out.print("Percentage 3: "); 
     int c = s.nextInt(); 
     Number(a,b,c); 

} 

public static void Number(int a, int b, int c) 
{ 

    X1 = (long) (X1*(a/100 + 1)); 
    W1 = (long) (W1*(b/100 + 1)); 
    Z1 = (long) (Z1*(c/100 + 1)); 

} 

但如果我嘗試輸入數字不會改變的結果。

注:X1,W1和Z1全部用作靜態長

而且在此先感謝。

+0

'public static void Number(int a,int b,int c){' - 這不是Javascript ..嘗試Java –

+1

你怎樣輸出結果? –

+0

如何定義X1,W1和Z1? – Macondo2Seattle

回答

0

您正在整數參數除以整數100使用 - 你猜對它 - 整數算術結果在0任何值小於100。使用100.0強制浮點精度。

X1 = (long) (X1*(a/100.0 + 1.0)); 
... 
+0

謝謝它很有效! – TheUnknown

3

除非A,B,C> = 100,則表達式

a/100 

將爲0。因此

something * (a/100 +1) 

something * 1 
0

除以在100.0你的電話號碼數字方法。