• ベストアンサー

このプログラムについて

1 11 111 1111  111   11    1   上記のように数字を(平行四辺形に)表示するforを使用した javaプログラムを作りたいのですが、 ずっと考えているのですがどのようにして組むのかさっぱりわかりません ヒントでもいいですので教えてください!

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

  • ベストアンサー
  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.2

>1 >11 >111 >1111 > 111 >  11 >   1 ちなみに↑をどうやって書きました? たぶん何となく書いたんでしょうが、プログラムはそれを具体的に指示してあげることが基本です。 めんどうですが、自分が上の図を書いた手順を紙などに書き出してみましょう。あとはそれをプログラムにしてあげるだけです。

その他の回答 (4)

回答No.5

2次元配列って、使ってもいいのかな?一応、以下のようなものも作ってみました。 public class Parallelogram{ public static void main(String args[]){ String tate_yoko [][] = new String[7][4]; int counter = 0; // 2次元配列の全ての要素に、スペースを入れておきます。 for(int i = 0;i < 7;i++){ for(int j = 0; j < 4;j++){ tate_yoko[i][j] = " "; } } for(int j = 0;j < 4;j++){ // 縦方向に「1」を表示していくためのループ for(int i = counter; i < counter + 4;i++){ tate_yoko[i][j] = "1"; } // 隣の列に移動します。 counter++; } for(int i = 0;i < 7;i++){ for(int j = 0; j < 4;j++){ System.out.print(tate_yoko[i][j]); } System.out.print("\n"); } } }

megumi0808
質問者

お礼

皆様のおかげで、プログラムを完成することができました! 本当にありがとうございました!

  • Musaffah
  • ベストアンサー率36% (37/101)
回答No.4

多分人によって作り方は様々ですが、「私ならこう作る」を伝授しますね。 (1)まずはルールをまとめます。 ・4つの"1"が並んでいます。 ・必ず"1"が1つ以上表示されます。 ・1回につき1つだけ右に移動します。 (2)ルールを絵(図)にします。 こんな”箱(配列)”を用意します。 ___1111___ ※"_"はスペースです。 そして、この箱の右端4つから、左方向に1つずつずらしながか表示させると・・・・ 1___ 11__ 111_ 1111 _111 __11 ___1 どうです?思ったとおりの絵になってるでしょう? そうしたら、後はそれをフローチャート→コーディングすればおしまいですよ。 public class Parallelogram{ public static void main(String[] args){ String disp = " 1111 "; int stIdx; for(stIdx=6;stIdx>=0;stIdx--){ System.out.println(disp.substring(stIdx,stIdx+4)); } } } どうです?簡単でしょ??

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.3

1つの方法、反ってわかりずらいかも? ----------------------------------- public class Sample { public static void main(String[]args){ int size=4; char mark='1'; for(int i=1;i<size*2;i++){ String outStr=""; for(int c=size-i;c<0;c++){ outStr+=" "; } for(int c=0;c<i && size>outStr.length();c++){ outStr+=mark; } System.out.println(outStr); } } }

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

上段の 1 11 111 1111 の方法は、解りますよね? 下段の  111   11    1 は、「何と何をいくつ?」組み合わせたものでしょうか?

関連するQ&A