■お題
ピラミッドを作る(問題出典:どう書く?org)
- 問題詳細 -
ピラミッドを作る(問題出典:どう書く?org)
- 問題詳細 -
正の整数nが与えられたときに、高さnのピラミッドを出力するプログラムを作ってください。
n=4の時の出力は下のようになります。
* *** ***** *******
■解答例
第一引数:繰り返す回数を指定します。
第二引数:繰り返す文字を指定します。
→String関数
では、コードです。
4行目:変数tempには、各段で表示する*マークを格納するのに使います。最後にJoinで改行を間に挟みます。
5行目:要素の数を再定義します。
7行目:変数i For文で繰り返し回数のカウントに使います
8行目:For文開始。最初は1で最後はn段のn
9行目:temp配列に各段の文字列を格納。String関数を2回使い
最初は、空白を生成し、次に*を生成しています。
10行目:繰り返し
12行目:表示
実際にこんな感じで使う
実行結果
第一引数:繰り返す回数を指定します。
第二引数:繰り返す文字を指定します。
→String関数
では、コードです。
Option Explicit
Sub MakePyramid(ByVal n As Integer)
Dim temp() As String
ReDim temp(n - 1)
Dim i As Integer
For i = 1 To n
temp(i - 1) = String(n - i, " ") & String(2 * i - 1, "*")
Next
Debug.Print Join(temp, vbLf)
End Sub
3行目:引数に段数を表す値nを受取ります4行目:変数tempには、各段で表示する*マークを格納するのに使います。最後にJoinで改行を間に挟みます。
5行目:要素の数を再定義します。
7行目:変数i For文で繰り返し回数のカウントに使います
8行目:For文開始。最初は1で最後はn段のn
9行目:temp配列に各段の文字列を格納。String関数を2回使い
最初は、空白を生成し、次に*を生成しています。
10行目:繰り返し
12行目:表示
実際にこんな感じで使う
Option Explicit
Sub Main()
MakePyramid (10)
End Sub
実行結果
*
***
*****
*******
*********
***********
*************
***************
*****************
*******************
0 件のコメント:
コメントを投稿