2012-11-22 88 views
1

我已經給出了僞代碼轉換成Java程序。找到一組輸入的最小值

這是如下:

  • 設置一個布爾變量「第一」爲真。

  • 而另一個值已成功

    • 如果第一次讀是真正的
      • 設置最小的值剛讀
      • 第一設置爲false
    • 否則,如果值小於最小值
      • 設置最小的值
    • 打印最小

到目前爲止,我有這樣的:

import java.util.Scanner; 
public class InputLoop 
{ 
    public static void main(String[] args) 
    { 
    Scanner scan = new Scanner(System.in); 
    System.out.println("Enter an integer"); 

    boolean first = true; 
    int min = 0; 
    int val = 0; 

    while (scan.hasNextInt()) 
    { 
     val = scan.nextInt(); 
     System.out.println("Enter an integer"); 
     if (first == true) 
     { 
      min = val; 
      first = false; 
     } 

     else if (val < min) 
     { 
      System.out.println("Enter an integer"); 
      min = val; 

     } 

     while (!scan.hasNextInt()) 
     { 
      System.out.println (("The minimum value is") + (min)); 
      break; 
     } 
    } 
} 
} 

任何幫助將不勝感激,因爲我很爲難!

謝謝。

+0

你有什麼麻煩? – SimonC

回答

6

你做得很好 - 只要繼續做你正在做的事。但是這裏有一些你需要知道的東西要完成:

  • 掃描儀類文檔是here。在那裏,你會看到你可以調用scan.nextInt(),它會返回你scan.hasNextInt()已經答應的整數。
  • 您可以爲「第一個」標誌聲明整數值,如果爲true,則表示正在處理第一個輸入。
  • 如果要在if語句的「內部」執行多個語句,則需要{},並且可以使用else關鍵字僅在前面的條件不成立時執行下一個語句。

讓我們知道是否沒有任何意義。

+0

+1使OP自己通過只顯示路徑來處理問題的答案 – Abubakkar

+0

想想我現在擁有它,如果您可以檢查答案,我會在上面編輯它,謝謝! – user1554786

+0

我剛剛運行你的代碼,它工作的很好 - 很好!我忽略了提到你需要確定你是如何得到你的意見的,但是在我寫下任何東西之前你已經明白了。 :P不要忘記,如果你打算把它作爲作業來打印,像「輸入一個整數(或一個非整數來結束程序)」,所以用戶不必猜測或看代碼。 –