
eclipse3.4.1を使用して、Javaで下記のようなコードを書いたのですが、望んだ結果が得られません。
public class 条件分岐 {
public static void main(String[] args){
for (int i = 1; i < 6; i++){
for (int j = 0; j < i; j++){
System.out.print("☆");
}
System.out.println();
}
}
}
そして、コンソールには、
☆
☆☆
☆☆☆
☆☆☆☆
☆☆☆☆☆
と、階段状に表示されます。
この結果を
☆
☆☆
☆☆☆
☆☆☆☆
☆☆☆☆☆
と、このようにピラミッド上に表示したいのですが、
どうすればよいのか分かりません。
どなたか、ご指導お願いいたします。
No.1ベストアンサー
- 回答日時:
for (int i = 1; i < 6; i++){
int spaceNum = 5 - i;
for(int r = 1; r <= spaceNum; r++)
{
System.out.print(" ");
}
for (int j = 0; j < i; j++){
System.out.print("☆");
}
System.out.println();
}
質問の意味が間違えていなければこれでいいのかな?
ただ、星(全角)の幅が、半角スペースの2倍という等幅フォントで出力すつ必要があります。
この回答への補足
ありがとうございます!
見事に表示されました!
・・・表示されたのですが、自分ひとつ重要な制限を書き忘れていまして、
System.out.は一行しか記述してはならない。
場合はどうすればいいでしょうか?
No.3
- 回答日時:
No1さんのソースをもとに、
1.ループに入る前に値を保持する変数(仮にbufとする)を""で定義。
2.System.out.print(" ");→bufに " "を足しこむ
3.System.out.print("☆");→bufに "☆"を足しこむ
4.System.out.print();→bufに 改行文字(\n)を足しこむ
5.ループが終わったらbufを表示。
うーん、もうちょっとぼかして書くべきだったかも・・・(回答書くのは嫌いなので)
No.2
- 回答日時:
こんな感じでどうでしょうか?
public class 条件分岐 {
public static void main(String[] args)
{
for (int i = 1; i < 6; i++)
{
for (int j = 0; j < 6 - i; j++)
{
System.out.print(" "); // 半角スペースを何個か入れる
}
for (int j = 0; j < i; j++)
{
System.out.print("☆");
}
System.out.println();
}
}
}
カーニングの関係で、ちょっとずれてしまう可能性もありますが・・・
この回答への補足
回答ありがとうございます。
試してみたのですが、
なんというか、塔が傾いたような形に表示され、
ピラミッド上になりませんでした。。。
自分でももう少し検証してみます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- C言語・C++・C# C言語 3 2022/11/09 13:27
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- C言語・C++・C# 大量のデータを読み込んで表示する速度を改善したい 8 2023/05/07 13:29
- Java eclipse実行ができない 2 2022/07/27 04:47
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
数値⇒漢数字変換 java
-
#の表記
-
取得した変数の値に1000を...
-
美しいコードって?
-
繰り返しによる星印の出力
-
テキストボックスに入力された...
-
ループ処理の際、最後だけ","を...
-
Ctrl+Zが入力されると終了する...
-
javaプログラムについて
-
論理演算子”||”またはの入力方法
-
javaの条件分岐でコンソールに...
-
for文の実行結果について
-
Java キーボードから負の数が入...
-
入力データ数を入力して、その...
-
Randomメソッドの確率設定
-
2つのスクロールバーを連動させ...
-
java 拡張for map
-
java キーボード入力された値の...
-
JAVAのfor文で困っています。
-
コマンドライン引数の例外処理...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ループ処理の際、最後だけ","を...
-
論理演算子”||”またはの入力方法
-
数値⇒漢数字変換 java
-
java キーボード入力された値の...
-
Randomメソッドの確率設定
-
テキストボックスに入力された...
-
続・ZZZ,ZZZ,ZZ9形式の金額形式...
-
7つ数字を表示したら改行すると...
-
countに実行した回数をいれたい...
-
JAVAのfor文で困っています。
-
(急いでいます)Javaで3回間違...
-
Java 入力した整数値の合計を、...
-
Java、2の0乗~10乗の表示
-
点数をだす時に、maxとminがお...
-
javaです。 途中まで出来ている...
-
Ctrl+Zが入力されると終了する...
-
配列を逆順させて表示させる方...
-
Java 配列 勝敗、引き分け判定...
-
繰り返しによる星印の出力
-
javaプログラムについて
おすすめ情報