mhb300

الارقام العشوائية بالرمجة ...........يوجد مشكلة

18 ردود في هذا الموضوع

لدي برنامج للاستاذه زهراء ..........وهو لعمل الارقام العشوائية .............يشتغل بشكل ممتاز ..............ولكن المشكلة هي...

اذا فتحت برنامج الاكسس ستجد ان الرقم العشوائي هو 705548

واذا اغلقت الاكسس وفتحته مرة اخرى ستجد الرقم اعشوائي هو 533424

وهكذا اذا فتحت برنامج الاكسس مرة اخرى ستجد ان الرقم العشوائي هو 705548 :wacko:

واذا اغلقت الاكسس وفتحته مرة اخرى ستجد الرقم اعشوائي هو 533424 :blink:

اي فقط هذين الرقمين لايتغيران ..................................ما هي المشكلة؟؟؟؟؟؟!!!!!!!!!!!!! :blink: :blink:

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

المرفقات توضح السؤال بدقه............ :rolleyes:

مع العلم اني قمت بالتغيير في المثال ليلائم طلبي

_________________.rar

تم تعديل بواسطه mhb300
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

بسم الله الرحمن الرحيم

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الاخ الغالي mhb300

تم فحص المرفق أكثر من مرة ولا يوجد به المشكلة التي أشرت أليها

المثال يعمل بشكل طبيعي 100%

تم تعديل بواسطه محمد فؤاد تركي
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

استاذي الكريم محمد فؤاد تركي ..........اشكرك على سرعة استجابتك

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

705548

533424

المشكله واضحه استاذي الكريم .....لابد تقوم بغلق الاكسس ثم فتحه لتجد ان الرقم الذي سيظهر اما الاول او الثاني

وانا في اريد الارقام تكون عشوائيه كلما افتح برنامج اكسس

تم تعديل بواسطه mhb300
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الفاضل محب تحيه عطره بعد السلام عليك

اعذرني لم ارى المثال المرفق ولكن توقعي ان مشكلتك تتلخص بالاتي

1- حين تفتح نموذج مثلا يعطيك رقم 1765 ثم تغلغه و تفتحه مره اخرى يعطيك 5345 ولكن اذا اغلقت الاكسس و فتحته فيعطيك مره ثانيه 1765

هذا توقعي اذا كان توقعي صحيحا فجرب هذا الامر على ملف جديد افتحه انت و قم بانشاء نموذج و الصق هذا الامر بفتح النموذج

المشكله ستتكر هنا - اذا ما الفائده و ما هو الحل

MsgBox (Int((9999 - 1000 + 1) * Rnd + 1000))

الحل يكمن بفهم المشكله و عي انه الرقم 1000 الاخير في كل مره تغلق الاكسس و تفتحه تعود قيمته لاول اختيار عشوائي و لا يمكنك من حل هذه المشكله الا اذا غيرة الرقم 1000 بالاخير بناء على ارقام متغيره اما تضيفها بناء على عداد او اي رقم اخر بشرط انه يكون متغير كل مره تفتح بها الاكسس اي لا يعتمد على خاصيه العشوائيه

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اشكرك استاذي الكريم .....نعم هذه المشكله التي عندي................اذا كيف اعمل ال(1000 )متغيره ........................

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

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اقترح عليك اخي محب بان تستخدم العداد لعمل رقم متغير

مثال

اذا فتح الفورم 5 مرات فانه بديل ال1000 = 5

وهكذا

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اشكرك استاذي الكريم..............هذه الطريقه صحيح تغير الرقم ولكن ايضا سوف يكون الرقم متزايد بشكل تسلسلي ......يعني ليس عشوائي بمعنى الكلمه

.............................ارجوا ممن لديه خبره في هذا المجال توضيحها................... :blink: .....هل من المعقول لايوجد طريقة لعمل ارقام عشوائية بشكل صحيح وليس عشوائيه "متسلسلة"

انا في انتظار ابداعات اساتذتي الكرام ................. :rolleyes:

تم تعديل بواسطه mhb300
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

للمرة الثانية أكرر

فتحت المثال أكثر من مرة وأغلقت برنامج الاكسس بل وأغلقت الجهاز نفسة ومازال المثال يعمل لدي بشكل طبيعي 300%

حاول تجربة المثال علي جهاز آخر ومثبت علية اوفيس 2003

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

الفاضل محب ، ليس بالضروره التقيد بالفكره المطروحه حيث انها مثال و يستخدم البعض طرق اخرى للتغلب على المشكله مثلا يقوم البعض بتخزين اخر قيمه في الرجستري و يعيد استخدامها للرقم المضروب كل مره فيكون الرقمه غير قابل للتكرار ابدا .

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أخي الغالي: محمد،،،

لمثلك أقول... غالي والطلب رخيص،

الطريقة التي سأرفقها سهلة جدا، هي طبعا لا تصل لمستوى الحلول التي إقترحها الأخ المدهش human73،

ولكنها على الأقل تفي بالغرض، والجود من الماجود.

Kuwait10Random.zip

المثال المرفق يقوم بتوليد أرقام عشوائية من 1 إلى 1000،

يمكن تغيير نطاق هذا الإجراء،

بالدخول إلى شاشة الـ VB.

تم تعديل بواسطه Kuwait10
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اخي و معلمي كويت 10 انت على حق فامر

Randomize

هو بالضبط تلخيص لجميع ما حاولت شرحه فهو يقوم بضبط عمليت البحث بالرقم الى رقم عشوائي لم يستخدم من قبل

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

أخي الغالي: محمد،،،

تسلم حبيبي

لمثلك أقول... غالي والطلب رخيص،

اشكر ذوقك واخلاقك العالية

الطريقة التي سأرفقها سهلة جدا، هي طبعا لا تصل لمستوى الحلول التي إقترحها الأخ المدهش human73،

كلكم عسل .......وحلولكم (بصل). :D ..ها اا ...قصدي كلكم عسل.... وحلولكم عسل. :blush: ......

ولكنها على الأقل تفي بالغرض، والجود من الماجود.

أي على الاقل... أي على الاكثر ..... :D .......هذا هو المطلوب 1000000000000% :thumb_up:

المثال المرفق يقوم بتوليد أرقام عشوائية من 1 إلى 1000،

يمكن تغيير نطاق هذا الإجراء،

بالدخول إلى شاشة الـ VB.

الصراحة اريد رقم يتكون من 10 خانات غيرت في الكود ووضعت الرقم 1000000000

ووضعت التنسيق 9999999999.(مايحتاج تعدهم ...عددهم 10 تسعات)......ولا فاد...(يعني ماجاب نتيجة)

وايضا وضعت .....حجم الحقل "مزدوج" ......ومافاد!!!

ماهو الحل بنظركم..........................................................

اخوكم محمد حسين................... :rolleyes:

تم تعديل بواسطه mhb300
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

اشكرك استاذي منتصر الانسي :rolleyes:

استاذي الكريم حل ممتاز جدا ....................... :clapping:

استفساري كان على حقل من نوع "رقم" مثلا .........او حتى حقل غير منظم...

هل يمكن ان اجعله يتحمل ادخال 10 ارقام داخله بهذه الصورة مثلا "1234567892"

اريد للبرنامج الذي وضعه الاستاذ (كويت 10) ان يقبل 10 ارقام .............؟؟؟.......هذا هو السؤال بدقة

تم تعديل بواسطه mhb300
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

human73: عشت يا أخوي ولا هنت، على رأسي والله.

محمد حسين:

الصراحة اريد رقم يتكون من 10 خانات غيرت في الكود ووضعت الرقم 1000000000

ووضعت التنسيق 9999999999.(مايحتاج تعدهم ...عددهم 10 تسعات)......ولا فاد...(يعني ماجاب نتيجة)

وايضا وضعت .....حجم الحقل "مزدوج" ......ومافاد!!!

بسيطة إن شاء الله،

الحل سيكون على المثال الذي قمت بإرفاقه لك،

أولا نقوم بتغيير نوع المتغير،

ثانيا: نقوم بتعديل نطاق الأرقام.

	Dim MyNum As Variant
Randomize
MyNum = Int((9000000000# * Rnd) + 1000000000)
Me.txtRandom = MyNum

ولا يجب أن يزيد الرقم عن 9000000000 إذا أردت توليد رقما من 10 خانات.

post-70844-1217457516_thumb.gif

post-70844-1217457516_thumb.gif

بارك الله فيك أخي منتصر والسموحة، فمشاركتي أتت متزامنة مع مشاركتك.

Kuwait10Random10.zip

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

والله ابداع ..........ابداع ...............اشكرك استاذي كويت 10 على هذه الاجابه النموذجيه....... بالصور والاجابة شافية........

والله ماقصرتوا اساتذتي الكرام .............اتمنى لكم الصحة والعافية ...... :rolleyes:

اخوكم محمد حسين............................................................

رسالة للمشرفين ........الحمد لله (تمت الاجابة عن سؤالي)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .