プロが教える店舗&オフィスのセキュリティ対策術

Javaのプログラムで
2の0乗~10乗までを改行表示したいのですが、for文を使って書かなければいけません。

まだ学んでいませんが累乗を計算する構文もあるようですが、それを使わずにfor文で2の0乗~10乗まで表示したいです。

1乗~10乗までは出来たのですが、0乗を含めることがどうしても出来ないので、回答お待ちしています。

A 回答 (3件)

補足に書かれているところまでできているんだったら、


(案1)
int num = 1;
System.out.println(num); // 2を掛ける前にprintlnする
for(int i=0; i<10; i++){
num *= 2;
System.out.println(num);
}
でいいと思います。
別にfor文の中でprintlnしなくても、
for文に入る前にprintlnしていいんでしょ?

どうしてもfor文の中でprintlnしたいんだったら
(案2)
int num = 1;
for(int i=0; i<=10; i++){ // 10までループする
System.out.println(num); // 2を掛ける前にprintlnする
num *= 2;
}
でもいいと思います。
この場合2の10乗まで表示したあと、
さらに2を掛けてからループ終了なので、
不必要な計算が入ります。
私は案1の方がスマートでわかりやすいと思います。
    • good
    • 0
この回答へのお礼

なるほど…どうしても2を0乗することにばかり考えが向いてしまって…単に1を最初に出力すれば良かったんですね。

ありがとうございました!

お礼日時:2014/01/30 14:35

考え方を工夫しましょう。



△ 「2の3乗」は「2を3回かける」こと
○ 「2の3乗」は「1に2を3回かける」こと
    • good
    • 1

その「1乗~10乗までは出来た」ってプログラムはどう考えてどう書いたの?

この回答への補足

public class Main{
public static void main(String[] args){
int num = 1;
for(int i=0; i<10; i++){
num *= 2;
System.out.println(num);
}

}
}

すみません、こんな感じです。
numは1で初期化して、10回2をかけるまで繰り返したんですが…

補足日時:2014/01/30 13:56
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています