/// 実習D7 制御文(For 〜Next) と配列 | プログラミング実習 |
プロジェクト名 実習D7データの検索
動作
10個の整数データ10,20,30,40,50,60,70,80,90,100を配列motoに格納しておき、入力されたデータと一致するデータが何番目にあるかを検索する。
デザイン
フォームのプロパティ
Font.Size = 11
Size = 320, 150
コード(プログラム) [終了ボタン]のメソッドは省略しています。
Public Class Form1
Private Sub btnKensaku_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnKensaku.Click
Dim moto() As Integer = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}
Dim kdata, n As Integer
kdata = @
For n = 0 To A
If moto(n) B kdata Then
MessageBox.Show(n + 1 & "番目にありました。", "実習D7")
Exit Sub
End If
Next
MessageBox.Show("見つかりませんでした。")
End Sub
End Class
テスト
検索データ=10 ⇒ 1番目にありました。
検索データ=100 ⇒ 10番目にありました。
検索データ=15 ⇒ 見つかりませんでした。
Memo
Do〜Loopで書き直すと
Public Class Form1
Private Sub btnKensaku_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnKensaku.Click
Dim moto() As Integer = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}
Dim kdata, n As Integer
kdata = CInt(tbxData.Text)
n = 0 ←nの初期値が必要
Do
If moto(n) = kdata Then
MessageBox.Show(n + 1 & "番目にありました。", "実習D7")
Exit Sub
End If
n = n + 1 ←nの増分計算が必要
Loop While n < moto.Length ←繰り返すかどうかの条件が必要
MessageBox.Show("見つかりませんでした。")
End Sub
End Class
/// 実習D7 制御文(For 〜Next) と配列 | Copyright©2014 Hiroshi Masuda |