VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2002/10/01(Tue) 14:03
投稿者けいこ
Eメール
URL
タイトルRe^2: VBで任意の排他的な数列をつくるには


> 配列に先に1〜5を設定しておき、
> ランダムにその配列の同士の中身を入れると重複することなく
> ランダムな順にできます。トランプのカードをきるのと同じ発想です。

ありがとうございます。さっそく作ってみました。
解決して、頭すっきりです。う〜ん、思いつきませんでした。

Private Sub subShaffle(shMaxNum As Integer) ’shMAXまでの数の排他数列
    Dim rndmNum As Integer
    Dim shKaisu As Integer
    Dim shI As Integer
    Dim tmpNum As Integer
    
    For shI = 1 To shMaxNum
        shNum(shI) = shI
    Next
    
    For shI = 1 To shMaxNum
    
        Randomize
        rndmNum = Int((shMaxNum - 1 + 1) * Rnd + 1)
        tmpNum = shNum(shI)
        shNum(shI) = shNum(rndmNum)
        shNum(rndmNum) = tmpNum
        
    Next
    
'    MsgBox shNum(1) & shNum(2) & shNum(3) & shNum(4) & shNum(5)
    
End Sub


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

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -