-3

ユーザーから一連の 10 個の整数を読み取り、それらの平均を出力するプログラムを設計して実装します。各入力値を文字列として読み取り、Integer.parseInt メソッドを使用して整数への変換を試みます。このプロセスで NumberFormatException (入力が有効な数値ではないことを意味する) がスローされた場合は、適切なエラー メッセージを出力し、再度数値の入力を求めます。10 個の有効な整数が入力されるまで、値の読み取りを続けます。

入力 • ユーザーがキーボードから入力した 10 個の整数 出力 • 数値の平均を出力します • エラー メッセージ o 入力されたものが整数でない場合 プロセス • スキャナ クラスをインポートします • 各整数値を読み込みます o 整数を使用して整数を変換します。 parseInt メソッド • 例外を作成する o NumberFormatException をスローする  無効  エラーメッセージを出力する

そのため、現在これを設計しており、コーディングを開始する場所がありません。numberformatexception と parseint を組み込むにはどうすればよいですか?

編集

java.util.Scanner をインポートします。

公開クラスNumAverage {

public static void main (String [] args)
{
    //int a,b;
    int[] numbers = new int [10];

    Scanner numreader = new Scanner(System.in);

    try
    {
        System.out.println("Enter 10 num");
        for (int i = 0; i < numbers.length; i++)
            numbers[i] = numreader.nextInt();
            numbers[i] = Integer.parseInt(s)
    }
    catch(NumberFormatException numfo)
    {
        System.out.println(numfo.getMessage() + "cannot be converted to integer");
    }

} }

では、配列から数値を取得して parseInted にする方法を教えてください。

4

3 に答える 3

1

これは宿題ですか?

例外処理

Integer.parseInt(String)

于 2012-12-03T00:13:19.073 に答える
1

変換のある部分があなたに頭痛の種を与えている部分だと思います。

try-catch次の句を使用できます 。

int a;
try{
    a = Integer.parseInt(aString);
}
catch(NumberFormatException e){
    System.out.println("An exception has been thrown. " + aString + 
         " is not a valid number");
}

これは文字列を受け取り、それを数値に変換しようとする部分であり、例外がスローされた場合、それをキャッチしてメッセージを出力します。Stringを数値に変換できない場合は、例外がスローされます。

于 2012-12-03T00:14:28.183 に答える
1

「ライターズブロック」がある場合は、トップダウンの抽象プログラミングを使用します。

REPEAT
    read a string;
    IF converted to an integer THEN
       ...
    ENDIF;
UNtIL ten integers have been read

そして、コードを具体的にします。

于 2012-12-03T00:14:55.443 に答える