2012-01-16 37 views
0

這裏是我的代碼:我試圖找到最小數量,但我一直在最大限度地幫他一些幫助嗎?

import java.util.Scanner; 
import java.util.Arrays; 
import java.text.*; 

public class p171ex6a{ 

    public static void main(String[] args){ 
     Scanner scan = new Scanner(System.in); 

     int numk; 
     numk = scan.nextInt(); 
     double num; 
     double [] max = new double[numk]; 

     for (int in=0;in<numk;in++) { 
      num = scan.nextDouble();   
      max [in]= num; 
     } 

     DecimalFormat df = new DecimalFormat("0.0000"); 
     Arrays.sort(max); 
     System.out.println(df.format(max[max.length-1])); 
    }  
} 
+0

Stack Overflow上的數字爲1的用戶剛剛回答了您的問題!很酷,呃? :) – Almo 2012-01-16 22:13:04

回答

8

如果你想找到最低號碼,你應該打印出數組的第一元素,而不是最後一個......因爲該陣列按升序排序。

System.out.println(df.format(max[0])); 

這裏的數組名稱很奇怪 - 類似values會更合適。我還要在第一次使用時聲明變量:

Scanner scanner = new Scanner(System.in); 
int valueCount = scanner.nextInt(); 
double[] values = new double[valueCount]; 

for (int i = 0; i < valueCount; i++) 
{ 
    values[i] = scanner.nextDouble(); 
} 

Arrays.sort(values); 

DecimalFormat formatter = new DecimalFormat("0.0000"); 
System.out.println(formatter.format(values[0])); 
+0

+1一如既往的燦爛:) – 2012-01-16 22:15:28