2016-10-26 11 views
-8

エラーが発生してシンボルIOを見つけることができません。 は、ユーザーが入力した数字のリストに最大値と最小値を出力します。数字のリストの入力が終了したときに再度入力する必要がある終了値をユーザーに尋ねます。最初に最大の数字を出力し、次に最も小さい数字を出力します。リストには少なくとも1つの番号が必要です。JavaのシンボルIOを見つけることができません

入力/出力用IOモジュールを使用します。 IO.reportBadInput()を介して不正な入力を報告し、エラー時に終了します。

public class MinMaxIO{ 
     public static void main(String[] args) { 
     double num; 
     double min = 0; 
     double min2 = 0; 
     System.out.println("Enter terminating value:"); 
     int term = IO.readInt(); 

     System.out.println("Enter next value:"); 
     num = IO.readDouble(); 

     if(num == term){ 
      IO.reportBadInput(); 
      main(args); 
     } 

     int count = 0; 
     min = num; 
     min2 = num; 

     do{ 
      num = IO.readDouble(); 

      if(num!= term && num < min) { 
       min2 = min; 
       min = num; 
      } 
      else if (num!= term && num < min2) { 
       min2 = num; 
      } 
      count++; 
     }while (num != term); 

     if (count < 2) { 
      IO.reportBadInput(); 
      main(args); 
      return; 
     } 
     else{ 
     IO.outputDoubleAnswer(min); 
     IO.outputDoubleAnswer(min2); 
     } 
    } 
} 

enter image description here

+1

コードを表示せずにこの質問をした理由は何ですか?あなたがコードを投稿した場合、この質問ははるかに意味がありませんので、私たちはそれを見て理解することができますか? –

+0

私のコードを更新しました: – 42HacK

+0

OK、IOと呼ばれる標準的なJavaクラスはありません - インストラクターによってこのクラスが与えられましたか?その場合は、インポートする必要があります。 –

答えて

1

UPDATE:あなたは、このようなreportBadOutput()としてIOに呼び出しているメソッドに気づく...そうIOが先生によってかということ提供されるクラスであることを想定しているように見えませんでしたあなた自身を実装する必要があります。いずれにしても、インポートする場合はScannerのようにインポートする必要があります。


OLD ANSWER:

あなたはScannerをインポートしませんが、決してそれを使用して、あなたが宣言したことがない/初期化IOされています。これらの2つをまとめて、コードの先頭にScanner IO = new Scanner(System.in)を追加する必要があります(変数も小文字で始める必要があります)。

try-with-resourcesブロックでラップするなど、Scannerインスタンスを閉じる必要があることに注意してください。

+0

また、 'readInt'を' nextInt'に変更する必要があります。 –

関連する問題