• ベストアンサー

掛け算九九の表示の仕方。

初心者です。 いろいろなサイトを見て、触って、独学しております。 自分に課題を与えて、出力するのを楽しんでおります。 今回は、 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 と、順番が求めているものと異なってしまいます。 どなたか、求めている順になるようにご教授をお願いします。 また、こんな書き方もあるよ!簡単だよ! 等々ございましたら、重ねてご教授をお願い申し上げます。

質問者が選んだベストアンサー

  • ベストアンサー
  • php504
  • ベストアンサー率42% (926/2160)
回答No.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) ); } }

max4919
質問者

お礼

シンプルですごいですね!! 気持が良いですね^^ ありがとうございました。

その他の回答 (1)

  • kichi8000
  • ベストアンサー率41% (660/1584)
回答No.1

勘違いじゃないですか? 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) );

max4919
質問者

お礼

速攻解決^^ ありがとうございました。

関連するQ&A

専門家に質問してみよう