• ベストアンサー

プログラムでfor文をつかうのですが…

こんにちは。 最近コマンドプロンプトでプログラミングを教わりました。 ここで聞きたいことがあるのですが、 For文を使って以下のような結果が表示されるようにしたいのです。 @ @@ @@@ @@@@ @@@@@ なにぶん初心者中の初心者なので是非お力をお貸しいただければ幸いです。 簡単なプログラムでお願いしたいです。 よろしくお願いします。

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

  • ベストアンサー
  • okgoripon
  • ベストアンサー率44% (1141/2548)
回答No.1

以下の2行をバッチファイルにして実行すれば望む結果が得られます。 @echo off for /l %%i in (1,1,5) do (for /l %%j in (1,1,%%i) do set/p X=@<nul) & echo. set/p X=@<nul は改行しないで@を1個表示するためのトリック。 2個めのforの直前のカッコと最後の閉じカッコは、その間の命令をひとまとめで扱うためのもの。 & 記号は、複数の命令を続けて実行する場合の接続子。 とても初心者がやるようなプログラミングではないのですが……。

ogroman
質問者

お礼

返答ありがとうございます! うれしいです!! ゴリゴリの初心者なので右も左もわかりません。 これでチャレンジしてみます。

その他の回答 (1)

  • pita-gora
  • ベストアンサー率70% (102/145)
回答No.2

ogromanさん、こんにちは。 教科書的なバッチはこんな感じでしょうか。 echo off setlocal ENABLEDELAYEDEXPANSION set str= for /L %%a in (1,1,5) do ( set str=!str!@ echo !str! ) 自分が最初にざっと書いたのはこちら。 echo off set str=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ for /L %%a in (1,1,5) do call echo %%str:~0,%%a%% 参考になさってください。

ogroman
質問者

お礼

回答ありがとうございます!! とても優秀なプログラマーさんなのですね!! 参考にさせていただきます^^

関連するQ&A