- ベストアンサー
掛け算九九の表示の仕方。
初心者です。 いろいろなサイトを見て、触って、独学しております。 自分に課題を与えて、出力するのを楽しんでおります。 今回は、 1×1=1 1×2=2 1×3=3 続 9×9=81 までを順に表示するようにソースを書く! を、課題にして下記を書いてみました。 public class siz { public static void main(String [] args) { int x = 1; while ( x <= 9 ) { System.out.println( " 1" +" × " + x + " = " + (1*x) ); System.out.println( " 2" +" × " + x + " = " + (2*x) ); System.out.println( " 3" +" × " + x + " = " + (3*x) ); x++; } } } すると、 1×1=1 2×1=2 3×1=3 続 9×9=81 と、順番が求めているものと異なってしまいます。 どなたか、求めている順になるようにご教授をお願いします。 また、こんな書き方もあるよ!簡単だよ! 等々ございましたら、重ねてご教授をお願い申し上げます。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
変数を2個使って2重ループにしたほうが記述は楽ですね 好みの問題かもしれませんが決まった回数を繰り返す場合はwhileループじゃなくてforループを使うのが一般的な気がします。 int x, y; for (x= 1; x <= 9; x++) { for (y = 1; y <= 9; y++) { System.out.println( x +" × " + y + " = " + (x*y) ); } }
その他の回答 (1)
- kichi8000
- ベストアンサー率41% (660/1584)
勘違いじゃないですか? System.out.println( " 1" +" × " + x + " = " + (1*x) ); System.out.println( " 2" +" × " + x + " = " + (2*x) ); 数値の項目が逆ですよ。 System.out.println( x +" × " + " 1" + " = " + (1*x) ); System.out.println( x +" × " + " 2" + " = " + (2*x) );
お礼
速攻解決^^ ありがとうございました。
お礼
シンプルですごいですね!! 気持が良いですね^^ ありがとうございました。