tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル 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)みたいに配列の様にキューを扱えればループの中で処理する事が出来ます。
御手数を掛けますが宜しく教えて下さい。

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。