2016-11-03 129 views
-7

嗨,大家好我正在寫一個程序來做下面的事情。我無法弄清楚如何編寫它。我只知道如何產生隨機整數,但除此之外我完全失去了。如果你們幫助我,我會愛上它! 程序創建一個大小爲10的數組,然後用1和100之間的隨機整數填充它。然後程序輸出數組中的最大和最小整數。如何在隨機整數數組中找到最小和最大的元素?

這是我到目前爲止有:

public class LargestSmallest 
{ 
    public static void main (String [] args) 
    { 
     int [] number = new int [2]; 
     System.out.println ("The random numbers generated are: "); 
     for (int count =0; count < number.length ; count++) 
     { 
      number[count] = (int)(Math.random()*100+1); 
      System.out.println (number[count]); 
     } 
    } 
} 
+0

發現和輸出的最小和最大數字。 –

+0

很好很抱歉,這只是爲了我更快地運行它。 –

+2

你試圖做的代碼在哪裏? – ChiefTwoPencils

回答

2

在代碼的開始,宣告了幾個變量來跟蹤你的最小值和最大值。設置一個跟蹤最小值的值,該值高於您將生成的任何值(以便第一次檢查時,它將保證更新),並將跟蹤的最大值保持爲小於你會產生任何價值。

int min = Integer.MAX_VALUE; 
int max = Integer.MIN_VALUE; 

當您生成隨機數字時,請快速比較並更新新數字。

if (number[count] < min) 
    min = number[count]; 
if (number[count] > max) 
    max = number[count]; 

或者,如果你需要生成的數字,然後找到最小值和最大值,寫一個簡單的循環來遍歷數組迭代並做同樣的事情。

for (int i = 0; i < number.length; i++) { 
    /* Comparison and storage code here */ 
} 
+0

感謝您的時間伴侶,但是老師並沒有涵蓋「整數」。 –

+0

您不必使用Integer類,值必須大於和小於您使用代碼生成的任何數字。 –

+0

或者實際上,只需使用我建議的for循環(如果您還沒有看到它,那麼只需添加一個像2分鐘前的編輯),並將min和max的初始值設置爲數組的第一個元素。爲什麼第一個元素是 –

-1

這應該爲你的隨機函數工作:

public static void main(String[] args) 
{ 
    int[] number = new int[100]; 
    System.out.println("The random numbers generated are: "); 
    for (int count = 0; count < number.length; count++) 
    { 
     number[count] = (int) (Math.random() * 100 + 1); 
     System.out.println(number[count]); 
    } 
    int min = 101; 
    int max = 0; 

    for (int i = 0; i < number.length; i++) 
    { 
     if (number[i] < min) 
     { 
      min = number[i]; 
     } 
     if (number[i] > max) 
     { 
      max = number[i]; 
     } 
    } 
    System.out.println("Max:" + max); 
    System.out.println("Min:" + min); 
} 
相關問題