タイトル : Queueを配列の様に使いたい 投稿日 : 2019/12/25(Wed) 22:44 投稿者 : nis9036
毎々お世話になります。 首記の件、キューQueueを配列の様に使ってジャグ行列を作成したいのです。 下のコードは1〜10までの2で割り切れる数と3で割り切れる数のジャグ行列を作成したものです。 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click Label1.Text = "" Dim War0 As New Queue '2で割りきれる数のキュー Dim War1 As New Queue '3で割りきれる数のキュー Dim NCou As Integer For NCou = 1 To 10 If NCou Mod 2 = 0 Then War0.Enqueue(NCou.ToString) '2で割りきれる数をキューWar0に格納 End If If NCou Mod 3 = 0 Then War1.Enqueue(NCou.ToString) '3で割り切れる数をキューWar1に格納 End If Next Dim YS As String()() = New String(1)() {} '2行のジャグ行列 YS(0) = New String(War0.Count - 1) {} '1行目初期化 配列個数 For NCou = 0 To War0.Count - 1 YS(0)(NCou) = War0.Dequeue() '順番に取り出す Next YS(1) = New String(War1.Count - 1) {} '2行目初期化 For NCou = 0 To War1.Count - 1 YS(1)(NCou) = War1.Dequeue() Next Label1.Text = YS(Num1.Value)(Num2.Value) '格納確認 End Sub ジャグ行列に入力する前に2で割り切れる数のキューをWar0と、3で割り切れる数のキューをWar1としていますが、これがもっと多い数を相手にするとなるとコードを書ききれません。 War(0)とかWar(1)みたいに配列の様にキューを扱えればループの中で処理する事が出来ます。 御手数を掛けますが宜しく教えて下さい。 |