2016-08-09 32 views
-3
import java.io.*; 
    import java.util.Scanner; 

    public class Main { 

     public static void main(String[] args) { 
      Scanner s = new Scanner(System.in); 
      System.out.print("Enter total number of overs: "); 
      int a = s.nextInt(); 
      System.out.print("Enter target Runs: "); 
      int b = s.nextInt(); 
      System.out.print("Enter overs bowled"); 
      int c = s.nextInt(); 
      System.out.println("Enter runs scored"); 
      int d = s.nextInt(); 
      double e = d/c; 
      float f = (b - d)/(a - c); 
      double g = 250/40; 
      System.out.println("\nName: " + e); 
      System.out.printf("%.2f", f); 
      System.out.println("ans" + g); 
     } 
    } 

這是一個用於估算運行率和板球所需運行率的程序。 當我找到小數點後的數字的平均值顯示爲.0 即。如果答案是6.25 它就會顯示爲6.00 可以請你幫我提前糾正這種java程序演示運營商的使用情況

感謝

+1

我投票結束這個問題作爲題外話,因爲海報不理解整數除法。 – duffymo

+0

將int隱藏在計算中或之前。例如'double e =(double)d /(double)c;' –

+0

這是因爲整數除法與浮點不同。你需要知道如何。 6/4 = 1整數除法; 6.0/4.0 = 1.5浮點數除法。 – duffymo

回答

0

因爲,b,c和d都是int和他們只會給你整的結果,做一個類型轉換來獲得想要的結果。

double e = ((double)d)/c; 

和同爲

float f= (b-d)/(a-c); 

這也需要一個浮點型來獲得浮點結果也是如此。

希望這會有所幫助。