package j1.lesson05;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* 課題0503 - 解答例.
* @author s.arakawa
* @version $Id: MultRow_java.rps,v 1.1 2006/03/06 12:56:15 java2005 Exp $
*/
public class MultRow {
/**
* コンソールに1以上9以下の整数を入力させ、
* 入力された値の段の九九を表示するプログラム。
* @param args 無視される
* @throws IOException 入力中に例外が発生した場合
*/
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
// row: 段を表す
System.out.print("1以上9以下の整数を入力してください:");
int row = Integer.parseInt(reader.readLine());
// (1以上9以下)でない は次の条件と等価
// 1未満 または 9より大きい
// ド・モルガンの定理を参照
if (row < 1 || 9 < row) {
System.out.println("1以上9以下の整数を入力してください");
}
else {
// 出力するそれぞれの値は、i={1,..,9} に対して 入力された値 * i
// そのような i を取る繰り返しを考える
for (int i = 1; i <= 9; i++) {
// 出力する値をはじめに変数に代入しておく
int col = row * i;
// 出力する値が1桁(=10未満)ならば先頭に 0 を出力
if (col < 10) {
System.out.print("0");
}
// 値を出力
System.out.print(col);
// それぞれの出力の区切りとしてスペースを出力
System.out.print(" ");
// 以上を9回繰り返す
}
}
}
}
|