اذهب الي المحتوي
أوفيسنا

الردود الموصى بها

قام بنشر

السلام عليكم ورحمة الله وبركاته

الفكرة: وضع سؤال بشكل عشوائي - وكذلك اعادة ترتيب الاجابات بشكل عشوائي حتي لا يحفظ المستخدم اماكن الاجابات

الأكواد المستخدمة:

Function GetRandNo()
    Randomize (28)

    GetRandNo = Int((28 * Rnd) + 1)
End Function

هذه الدالة تقوم باعطائي رقم عشوائي بين 1 - الي 28

المشكلة: انها تكرر الأرقام مما يخفي بعض الاجابات والتي تكون احيانا الاجابة الصحيحة علي السؤال العشوائي 

المحاولات التي قمت بها: 

قمت بوضع متغير مصفوفة لتخزين قيمة الرقم العشوائي لاعادة البحث عنه وتغيره في حالة وجوده بالقائمة ولكن وجاهتني مشكلة في تخزين القيمة بشكل متسلسل بالقائمة

Function GetRandNo()
Dim n As Integer

Recall:
    Randomize (28)

    GetRandNo = Int((28 * Rnd) + 1)

    
    For n = 0 To UBound(RndNo) - 1
        If GetRandNo = RndNo(n) Then
            GoTo Recall
            Exit For
        Else
            GoTo contnue
        End If
    Next
Exit Function

contnue:

For n = 0 To UBound(RndNo) - 1
    If RndNo(n) = 0 Then
        RndNo(n) = GetRandNo
'        Debug.Print "Inex: " & n
'        Debug.Print "Element index:" & RndNo(n)
        Exit For
    End If
'Debug.Print RndNo(n)
Next

    

End Function

وهذا الكود بعد تنفيذ الفكرة ولكن لم يتم تخزين القيمة بالمصفوفة بشكل صحح 

وجزاكم الله خيرا

قام بنشر

جرب هذا :::::::

Dim RanNo() As Long
Private Sub RandomizeNumbers(ByVal iFrom As Integer, ByVal iTo As Integer)
ReDim RanNo(iFrom To iTo)
For i = iFrom To iTo
RanNo(i) = i
Next i
Randomize (Timer)
For i = iFrom To iTo
j = CInt((iTo - iFrom) * Rnd + iFrom)
tmp = RanNo(i)
RanNo(i) = RanNo(j)
RanNo(j) = tmp
Next i
End Sub
Private Sub أمر0_Click()
RandomizeNumbers 0, 28
For i = 1 To 28
List1.AddItem RanNo(i)
Next i

End Sub

 

  • Like 2
  • Thanks 1
قام بنشر (معدل)

وعليكم السلام استاذ ابو عبد الله ..

لدي كود random لايكرر الارقام ...لا اعلم ان كان يفيدك فقد جربته على 28 سجل

 

 

random.rar

تم تعديل بواسطه Eng.Qassim
  • Thanks 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information