みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

累乗のプログラム

以下は、整数iの1乗からj乗まで求めるJAVAの累乗プログラムです。

int i=3, j=5;
int n, kekka=1;
for(n=1;n<=j;n ){
kekka=kekka*i;
System.out.println(i "の" n "乗は," kekka "です.");
}

この2行目と4行目のkekkaの含まれる式の意味が全く分からないのですが、教えてください。

投稿日時 - 2017-10-13 23:47:09

QNo.9385566

困ってます

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

>2行目と4行目のkekkaの含まれる式の意味

>2行目

「kekka」に「1」の初期値を代入。

>4行目

for文で「j」回ループするので、「kekka」に「i」を「j」回分 乗算しています。

実際に変数の値を予想してみて下さい。

「kekka」の初期値:「1」
for文 1回目:「kekka=kekka*i;」→「kekka=1*3」→「kekka=3」
for文 2回目:「kekka=kekka*i;」→「kekka=3*3」→「kekka=9」
for文 3回目:「kekka=kekka*i;」→「kekka=9*3」→「kekka=27」
for文 4回目:「kekka=kekka*i;」→「kekka=27*3」→「kekka=81」
for文 5回目:「kekka=kekka*i;」→「kekka=81*3」→「kekka=243」

この結果から「kekka」の初期値が「1」である必要があると分かりますか?

投稿日時 - 2017-10-14 00:20:29

お礼

ご回答ありがとうございました。forで繰り返されているんですね?kekkaが1なのは1乗から始まるからですか?

投稿日時 - 2017-10-14 01:40:49

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

>kekkaが1なのは1乗から始まるからですか?

違います、強いて言うなら「"この場合"はゼロ乗から始まっている」となります。
(for文で どんどん乗算"だけ"していく場合(式に「足し算、引き算」などが入ってない場合)は「kekka」の初期値に「0」が代入されると、いくら乗算しても「0」ですので)「0」以外の適切な値が必要になります、この場合の適切な値が(ゼロ乗の)「1」となります。

投稿日時 - 2017-10-14 03:05:09

お礼

分かりました。ありがとうございました。

投稿日時 - 2017-10-14 07:00:19

あなたにオススメの質問