スポンサーサイト





上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

九九の表を作る





この記事は、「繰り返し1 for文で九九の表を作る」の記事を読んでからのほうがわかりやすいと思います。


配列の応用として、九九の表を作ってみます。

配列を用いて九九の表を作るには、
1. 9×9の配列を宣言する。
2. 九九の結果を配列に保存する。
3. 九九の結果を表示する。
という3つのステップを踏みます。

for文ひとつで作るよりも段階を踏まなければならないので面倒ですが、配列の勉強になるのでぜひともマスターしたいところです。

こんなふうに出力してください。


九九の表
1 2 3 4 5 6 7 8 9
2 4 6 8 10 12 14 16 18
3 6 9 12 15 18 21 24 27
4 8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81




ではソースを掲載します。



public class Sample
{
public static void main(String args[])
{
System.out.println("九九の表");

// 配列の宣言。
int kuku[][] = new int[9][9];

// 九九の結果を配列に保存。
for( int i=0; i<9; i++ ) {
for( int j=0; j<9; j++ ){
kuku[i][j] = (i+1) * (j+1);
}
}

// 九九の結果を表示。
for( int i=0; i<9; i++ ) {
for( int j=0; j<9; j++ ) {
System.out.print(kuku[i][j] + " ");
}
System.out.println();
}
}
}



では解説します。繰り返し処理の意味は、「繰り返し1 for文で九九の表を作る」の記事で復習してください。

まず、九九の表は9×9の表ですから、
  int kuku[][] = new int[9][9];
で多次元配列を宣言します。

次に九九の結果を配列に保存するのですが、難しいのは、たとえば、2×4という演算の結果が配列kuku[2][4]に保存されるわけではないということです。

どういうことか分かりますか?

たとえば、
  int num[] = new int[9]
で9個の配列を宣言したとき、作られる配列は、
  num[0],num[1],num[2],num[3],num[4],num[5],num[6],num[7],num[8]
の9つです。

配列の添え字は0から始まりますが、九九は1から始まります。なので1つずつズレが発生するので、これを調整しなければなりません。


for( int i=0; i<9; i++ ) {
for( int j=0; j<9; j++ ){
kuku[i][j] = (i+1) * (j+1);
}
}


の部分は、たとえば、kuku[0][0]には1×1が入り、kuku[0][1]には1×2が入る…といったように、kuku[i][j]には(i+1)×(j+1)が入る、という意味です。

難しいですが、頭の体操になりますね。

なお、あくまでiとjは1から9としたい場合は、配列を9×9ではなくて、10×10にするという手もあります。大きな配列を宣言しても全部利用しなければならないというわけではないので、そういうやり方も可能です。

ソースを掲載します。



public class Sample
{
public static void main(String args[])
{
System.out.println("九九の表");

// 配列の宣言。
int kuku[][] = new int[10][10];

// 九九の結果を配列に保存。
for( int i=1; i<=9; i++ ) {
for( int j=1; j<=9; j++ ){
kuku[i][j] = i * j;
}
}

// 九九の結果を表示。
for( int i=1; i<=9; i++ ) {
for( int j=1; j<=9; j++ ) {
System.out.print(kuku[i][j] + " ");
}
System.out.println();
}
}
}
関連記事

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://javamania.blog25.fc2.com/tb.php/14-bedca627
  • 閉じるボタン
クラスライブラリ解説 目次
クラスライブラリとは
 ├ Java APIの調べ方
 ├ Objectクラスを調べる
 ├ ライブラリのインポート
 ├ 完全修飾クラス名を調べる
 ├ staticインポート
 ├ 外部ライブラリの利用

文字列を扱う
 ├ Stringとイミュータプル
 ├ StringBuilder 文字列の連結
 ├ toString()のオーバーライド
 ├ toXxCase() 大文字と小文字
 ├ compareTo() 値の比較
 ├ parseDouble() 文字を小数値に
 └ 文字列を抜き出す
 ├ char配列からString型へ変換
 ├ 空白文字の除去

日付を扱う
 ├ Calendar 現在の日付
 ├ Date 日付の表示

数値演算を扱う
 ├ round() 切上・切捨・四捨五入
 ├ BigDecimal
 ├ sqrt(),pow() 累乗と平方根
 ├ BigInteger
 ├ int型の最大値・最小値
 ├ random() 乱数作成

ファイルを扱う
 ├ ファイルの存在確認
 ├ ファイルを作成
 ├ ファイルの削除
 ├ ファイルサイズを調べる

入出力ストリーム
 ├ ファイルを読み込む
 ├ 画像ファイルのコピー
 ├ 日本語の読み込みと書き出し
 ├ バッファ入出力
 ├ データ型フリーの出力ストリーム
 ├ getBytes()メソッド

書式つき入出力
 ├ 書式を指定して出力
 ├ 引数インデックス
 ├ 整数値のフォーマット
 ├ 小数値のフォーマット
 ├ 九九の表のフォーマット

例外処理
 ├ printStackTrace()
 ├ NullPointerException
 └ NumberFormatException
月別アーカイブ
カテゴリ
リンク
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。