第10講 プロシージャの再帰的使用
第7話 Subプロシージャの再帰的使用による自然配列の発生
実現プログラムコード例
Private Sub CommandButton1_Click()
f (0)
End Sub
Sub f(i As Byte)
Dim a As Byte, s As Byte
a = i Mod 10
s = Int(i / 10)
Cells(5 + s, 2 + a) = i + 1
If i + 1 < 100 Then f (i + 1)
End Sub
解説
10個ずつで改行するには
a = i Mod 10
s = Int(i / 10)
という2つの変数を用意します。
第7講第3話では2次元For文で行いましたが、
2次元処理は1次元処理でできるのです。
この再帰的使用はiの1文字ですから、
1次元処理です。
1次元処理を2次元に翻訳するための装置が、
a = i Mod 10
s = Int(i / 10)
という訳です。
Subプロシージャfの引数を2つにすれば、
直接2次元で扱うこともできます。
これを次話の課題としましょう。
ただし、今回はグローバル変数を
設けることを認めることにします。
初心者のためのc++ vc++ c言語 入門 基礎から応用までへ
初心者のための excel 2007 2010 2013 vba マクロ 入門 基礎から応用まで
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
vb講義トップへ
VB講義基礎へ
専門用語なしのC++入門へ
専門用語なしのJava入門へ
専門用語なしのVBA入門
数独のページ
魔方陣のページ
数学研究室に戻る
本サイトトップへ