キーボードから整数の個数と各整数の値を読み込んで配列に格納し、指定された要素番号(添字)の値を表示するプログラム
練習問題6
キーボードから整数の個数と各整数の値を読み込んで配列に格納し、指定された要素番号(添字)の値を表示するプログラムを作成する。
ただし、
入力文字列を整数に変換できない場合は「整数以外が入力されました。」、
指定した番号が配列の添字の範囲外である場合は「○○番の整数は存在しません。」、
キーボードからの読み込み時に例外が発生した場合は「入力時に例外が発生しました。」
と表示し、例外の発生の有無にかかわらず「プログラムを終了します。」と最後に表示してください。
実行画面
0番の整数を入力して下さい > 4【enterキー】
1番の整数を入力して下さい > 7【enterキー】
2番の整数を入力して下さい > 2【enterキー】
3番の整数を入力して下さい > 9【enterキー】
4番の整数を入力して下さい > 3【enterキー】
何番の整数を表示しますか? > 1【enterキー】
1番の整数は7です。
プログラムを終了します。
0番の整数を入力して下さい > 4【enterキー】
1番の整数を入力して下さい > 7【enterキー】
2番の整数を入力して下さい > 2【enterキー】
3番の整数を入力して下さい > 9【enterキー】
4番の整数を入力して下さい > 3【enterキー】
何番の整数を表示しますか? > 5【enterキー】
5番の整数は存在しません。
プログラムを終了します。
解答例
public class ren14_6 {
public static void main(String[] args) {
int n=-1;
int num;
BufferedReader br = new BufferedReader(
new InputStreamReader(System.in));
try {
System.out.print("整数の個数を入力して下さい > ");
num = Integer.parseInt(br.readLine());
int array[] = new int[num];
for(int i=0; i
array[i] = Integer.parseInt(br.readLine());
}
System.out.print("何番の整数を表示しますか? > ");
n = Integer.parseInt(br.readLine());
System.out.println(n + "番の整数は" + array[n] + "です。");
}
catch (NumberFormatException e) {
System.out.println("整数以外が入力されました。");
}
catch (ArrayIndexOutOfBoundsException e) {
System.out.println(n + "番の整数は存在しません。");
}
catch (IOException e) {
System.out.println("入力時に例外が発生しました。");
}
finally {
System.out.println("プログラムを終了します。");
}
}
}
キーボードから整数の個数と各整数の値を読み込んで配列に格納し、指定された要素番号(添字)の値を表示するプログラム関連ページ
- try〜catch文を用いて、不正表示をだして、終了するプログラムを作成
- try 〜 catch文を用いて、整数の入力のときに、整数以外が入力されると、何度でも入力し直すようにするプログラム
- インタフェースに書き換えたプログラム
- キーボードから割られる数と割る数を読み込んで、割り算の商と余りを表示するプログラム
- キーボードから入力した情報に基づいて三角形や四角形のインスタンスを生成し、その面積を表示するプログラム
- 平面図形を表す抽象クラス、正三角形を表すサブクラス、正方形を表すサブクラスを作成し、図形の面積を表示するプログラム
- 立体図形を表すインタフェース、立方体を表すクラス、球を表すクラスを作成し、図形の体積と表面積を表示するプログラムを作成