第15講 データの並び換え
第2話 最小値(最大値)を見つける方法
4,7,6,3,5
から最小値を見つけるにはどうしたらよいでしょうか。
出来るだけ大きい数(最小値としてはあり得ない数)を用意して、
min=10000
等としておきます。
例えば、国語のテストの最低点を探す問題なら、
min=100
でよいですね。
普通のテストは0点から100点までですから、
最低点が100というのはあり得ませんね。
今回は、一桁の自然数になっていますから、
min=10
でよいことになります。
minはデータの性質によって設定が変わってきます。
まず、min=10と4を比較します。
minより小さい場合には、minの内容を4に置き換えます。
4の方が小さいですから、min=4となります。
次に、min=4と7を比較します。
7の方が大きいですから、何もしません。
つまり、min=4のままです。
minと6を比較します。
やはり、6の方が大きいですから何もしません。
また、min=4にとどまります。
4,7,6,3,5
minと6を比較します。
今回も6の方が大きいですから、
何もせずに、min=4のままです。
minと3を比較します。
3の方が小さいですから、minの内容を3に置き換えます。
min=3となります。
最後に、minと5を比較します。
5の方が大きいですから、何もせずにmin=3のままです。
以上の処理で、min=3となりました。
最小値3が見つかりました。

では、実際にマクロを組んでみましょう。
参考ダウンロード添付ファイル
を開いて、
Private Sub CommandButton1_Click()

  CommandButton2_Click
  Dim a(200) As Integer
  Call f(a()) 'データ発生
  Call h(a()) 'データ表示
  Call g(a()) '最小値の探索と表示
  
End Sub

Sub f(a() As Integer)
  
  
End Sub

Sub g(a() As Integer)

  
End Sub

Sub h(a() As Integer)

  
End Sub

Private Sub CommandButton2_Click()
  
  Rows("5:20000").Select
  Selection.ClearContents
  Cells(1, 1).Select
  
End Sub
の空白部分を埋めて、実行ボタンを押すと、
データが発生してその下の行に最小値が表示されるようにして下さい。
Dim a(200) As Integer
は、要素数を大きめに取っていますが、
最初は、発生させるデータ数は5個程度で、
発生する整数も1桁にして実験して下さい。
上手くいくようであれば、データ数を10個、100個など
増やして整数の桁数も大きくしていって下さい。
vb

第1話へ 第3話へ
004

eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門
数独のシンプルな解き方・簡単な解法の研究
vc++講義へ
excel 2013 2010 2007 vba入門へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
専門用語なしの C言語 C++ 入門(Visual C++ 2010で学ぶ C言語 C++ 入門)
専門用語なしの excel vba マクロ 入門 2013 2010 2007 対応講義 第1部
eclipse java 入門へ
excel 2016 vba 入門へ
小学生からエンジニアまでのRuby入門へ
本サイトトップへ