الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف أستطيع توليد أرقام عشوائية بالفيجوال بيسك 6 ...؟

بدأه hammod_85110 في 4 يوليو 2007 · 11 رد · 6,699 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ......

كنت أود أن أعرف كيف أستطيع عمل عداد عشوائي

أنا أعرف طريقة وقد وضعتها في المرفقات

عن طريق كتابة الكود التالي :

Label1.Caption = Int(Rnd * 10)

لكن هذه الطريقة لا يتغير العد العشوائي فيها بعد كل تشغيل للبرنامج

فعند تشغيل البرنامج يبدأ بأرقام معينة

وعند اغلاق البرنامج واعادة تشغيله مرة أخرى

تظهر نفس الأرقام ...

مالحل ...؟

أرجو المساعدة

_____________.rar

تم تعديل هذه المشاركة بواسطة hammod_85110 في 4 يوليو 2007 في 17:51

#2
Randomize
MsgBox Int((10 * Rnd) + 1)

التصريح Randomize يعمل مع الدالة Rnd

و نستفيد منه عدم التكرارية و الحصول علي عشوائية افضل

لانه يعتمد علي ساعة النظام لديك

"" مــنــقــول""

#3

كما ذكر الاخ جمال الجملة Randomize تقوم بهذا العمل كما يمكنك استعمال الموقت لاخراج ارقام عشوائية تعتمد على seed مختلف كل مرة

msgbox rnd(timer)

#4

أخي الكريم لقد وجدت الحل وهو بالإعتماد على الوقت لأنه وكما تعلم أن الوقت يتغير كل ثانية ولهذا قمت بعمل مثال وأرفقتة وأي شيئ لا تفهمة أعلمني.

___________.rar

google.gif

spamxk4.gif

petitionbanner17a.gif

Email : sao_-5000@hotmail.com

#5

اخواني

الحدث randomize جميل لكن انا اريد مثلا عندي ارقام من الصفر الى 14 عند ضغط الزر يختار رقم عشوائي و يحذفه (يحذفه اقصد عند الضغطة الثانية لا يطلع) واذا عصيت اربعة عشرة مرة يطلع مسج بوكس بان الارقام خلصت

startingprogremmer.jpg
#6

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

هل أستطيع أن أحذف الرقم فلا يعود يظهر مرة أخرى عند تشغيل البرنامج لهذه المرة فقط ......؟

#7

الــســـلام عــلــيــكــم

الــحــل بــالــمــرفـــقـــات

____.zip

#8

هو الكود تقريباً مفهوم أخ جمال بس كثرة التعشيشات لخبطتني فممكن تشرح كود البرنامج

#9

شكرا جزيلا أخ جمال

#10

خذوا هذا الكود و جربوه

Private Sub Command1_Click()
Dim x, i, r, j
r = 10
x = (Hour(Now) * Second(Now) * Minute(Now) * Month(Now) * Day(Now) * Year(Now))
For i = 0 To 11
If x / r > 1 Then
r = r * 10
End If
If x / r <= 1 Then
j = x / r
Exit For
End If
Next i
Label1.Caption = Int(Rnd * (j * 1000))
End Sub
#11

هذا أفضل

Dim x, i, r, j
r = 10
x = Hour(Now) + Second(Now) + Minute(Now)
For i = 0 To 2
If x / r > 1 Then
r = r * 10
End If
If x / r <= 1 Then
j = x / r
Exit For
End If
Next i
Label1.Caption = Int(Rnd * (j * 10))
#12

بعد عام أو اكثر

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

بالرغم من مرور أكثر من عام علي مشاركتي الأخيرة في هذه الصفحة إلا أنني فضلت أن اشارك عسي أن ينتفع بها الجميع

أولا : قمت بتجربة العديد من الاكواد التي تفضل بها الإخوة الافاضل(في هذا الموقع أو المواقع الأخري) للحصول علي أرقام عشوائية ((((لا تتكرر))))

و للأسف كانت نتيجة جميع الأكواد لا تتعدي 80% بالرغم من استخدامهم لعنصر الزمن المتغير بالطبع و التصريحRandomize ....الخ

ثانيا: لم أجد غير كودي الذي ارفقته من عام بنجاح 100%(ليس غرورا و الله العظيم)إلا أنه كان يفتقد لشرح تفصيلاته و عناصره أما الآن

فيسعدني أن أقدم الكود بعد تحسينه و اضافة شرح لكل سطر في الكود (عسي أن ينتفع به المؤمنون) و لا أطلب منكم سوي الدعاء لي و لأهلي و للمسلمين و المسلمات و المؤمنين و المؤمنات بكل خير في الدنيا و الآخرة

الكود بالمرفقات

random.zip

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…