الانتقال إلى المحتوى الرئيسي

كيفية إنشاء رقم عشوائي أو عنصر باستخدام طرق البرمجة

في البرمجة ، تعد الأرقام أو العناصر العشوائية أداة شائعة الاستخدام. يمكن أن تكون الأرقام العشوائية مفيدة في المهام المتعلقة بإنشاء معرفات فريدة ، وضوضاء لنمذجة العمليات الطبيعية ، والعديد من المجالات الأخرى.

يمكن إنشاء أرقام عشوائية باستخدام طرق مختلفة بلغات برمجة مختلفة. تحتوي بعض لغات البرمجة على وظائف مضمنة لتوليد أرقام عشوائية ، على سبيل المثال ، وظيفة راند() في ج.

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

في هذه المقالة ، سننظر في طرق مختلفة لإنشاء أرقام أو عناصر عشوائية بلغات برمجة مختلفة والنظر في استخدامها في الممارسة العملية.

  1. توليد رقم عشوائي
  2. طرق البرمجة
  3. العمل مع الأرقام العشوائية الزائفة
  4. استخدام أرقام عشوائية في التطبيقات
  5. خوارزميات لتوليد عناصر عشوائية
  6. 1. أرقام عشوائية زائفة
  7. 2. توليد عنصر عشوائي من بعض مجموعة
  8. 3. توليد إحداثيات عشوائية
  9. سؤال وجواب
  10. هل هناك وظائف خاصة لتوليد أرقام عشوائية في لغات البرمجة المختلفة?
  11. كيف يمكنني إنشاء رقم عشوائي في نطاق معين?
  12. هل من الممكن إنشاء رقم نقطة عائمة عشوائية?
  13. كيف يمكنني إنشاء رقم عشوائي في فترة زمنية معينة?
  14. كيف يمكنني إنشاء عنصر عشوائي من صفيف أو قائمة?
  15. هل من الممكن استخدام أرقام عشوائية في التطبيقات لإنشاء كلمات مرور أو معرفات?

توليد رقم عشوائي

يعد إنشاء أرقام عشوائية إحدى المهام الرئيسية في البرمجة. يمكن استخدام الأرقام العشوائية في مختلف المجالات ، من الألعاب والخوارزميات إلى التشفير والإحصاءات.

هناك عدة طرق لتوليد أرقام عشوائية في البرمجة. دعونا ننظر إلى بعض منهم:

  • مولدات الأرقام العشوائية الزائفة: تستخدم هذه الخوارزميات الصيغ الرياضية لإنشاء أرقام تظهر بشكل عشوائي. وهي تستند إلى قيمة أولية تسمى "البذور" وتولد سلسلة من الأرقام التي تظهر بشكل عشوائي ، ولكنها في الواقع حتمية.
  • الأجهزة عدد عشوائي المولدات: تستخدم هذه المولدات العمليات المادية أو الأجهزة لتوليد أرقام عشوائية. تشمل الأمثلة ضوضاء إشارات الراديو أو المجالات الكهرومغناطيسية.

مولدات الأرقام العشوائية الزائفة هي الأكثر شيوعا في البرمجة. من الممكن استخدام خوارزميات مختلفة لتوليد أرقام عشوائية:

  1. طريقة التطابق الخطي: تعتمد هذه الطريقة على صيغة متكررة بسيطة. يتكون من ثلاث معلمات: معامل (م) ، مضاعف (أ) وزيادة (ج). تحدد القيمة الأولية (الحبوب) الرقم العشوائي الأول ، ويتم حساب كل رقم لاحق باستخدام الصيغة (البذور * أ + ج) وزارة الدفاع م.
  2. طريقة بلوم ميكالي: هذه الطريقة هي نسخة محسنة من طريقة التطابق الخطي. يتم استخدامه عند الحاجة إلى درجة أكبر من الاستقلال بين الأرقام في تسلسل.
  3. طريقة ميرسين: تعتمد هذه الطريقة على استخدام أرقام ميرسين (أرقام النموذج 2^ن — 1). يوفر درجة عالية من الاستقلال وتوزيعا موحدا مرضيا للأرقام العشوائية.

عند تطوير برنامج بتوليد أرقام عشوائية ، من المهم أن تتذكر أنه يمكن تكرار الأرقام العشوائية الزائفة إذا كانت القيمة الأولية (الحبوب) للمولد معروفة. لذلك ، من المهم اختيار حبة كبيرة وعشوائية بما فيه الكفاية لكل تشغيل برنامج.

بالإضافة إلى ذلك ، يجدر النظر في أن الأرقام العشوائية الزائفة ليست عشوائية تماما وقد تظهر بعض الأنماط الإحصائية. لتوليد رقم عشوائي أكثر موثوقية ، يمكنك استخدام مزيج من عدة خوارزميات أو مولدات أرقام عشوائية للأجهزة.

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

طرق البرمجة

هناك العديد من طرق البرمجة المستخدمة لإنشاء أرقام أو عناصر عشوائية. بعض منهم تشمل:

    استخدام الوحدة العشوائية في لغة برمجة بايثون:

    تحتوي لغة برمجة بايثون أيضا على وحدة عشوائية مدمجة لتوليد أرقام عشوائية. لإنشاء رقم عشوائي في نطاق معين ، يمكنك استخدام وظيفة راندينت (). على سبيل المثال ، للحصول على رقم عشوائي من 1 إلى 10 ، يمكنك استخدام الكود التالي:

    استيراد عشوائي

    رقم عشوائي = عشوائي.راندينت (1، 10)

    طباعة (رقم عشوائي)

    • هذه ليست سوى بعض تقنيات البرمجة التي يمكن استخدامها لإنشاء أرقام أو عناصر عشوائية بلغات برمجة مختلفة. يعتمد اختيار الطريقة على لغة البرمجة التي تعمل بها ومتطلبات مشروعك.

    العمل مع الأرقام العشوائية الزائفة

    عند البرمجة ، غالبا ما يكون من الضروري إنشاء أرقام أو عناصر عشوائية. للقيام بذلك ، يتم استخدام مولدات شبه عشوائية ، والتي تولد سلسلة من الأرقام التي تبدو عشوائية.

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

    واحدة من الوظائف الرئيسية للوحدة هي عشوائية (). تقوم بإرجاع رقم فاصلة عائمة عشوائية من 0 إلى 1. على سبيل المثال ، يمكن أن يؤدي استدعاء الدالة العشوائية() إلى إرجاع القيمة 0.234353.

    إذا كنت بحاجة إلى الحصول على عدد صحيح عشوائي ، يمكنك استخدام وظيفة راندينت (أ ، ب). يقوم بإرجاع عدد صحيح عشوائي في النطاق من أ إلى ب شاملة. على سبيل المثال ، استدعاء وظيفة راندينت(1 ، 10) يمكن إرجاع القيمة 5.

    لإنشاء عناصر عشوائية من القائمة ، يمكنك استخدام وظيفة الاختيار(ما يليها). يقوم بإرجاع عنصر عشوائي من القائمة اللاحقة التي تم تمريرها. على سبيل المثال ، استدعاء وظيفة الاختيار(["تفاحة" ، "موز" ، "برتقالي"]) يمكن أن يعيد القيمة "موز".

    1. إذا كنت بحاجة إلى الحصول على عدة عناصر عشوائية من القائمة دون تكرار ، يمكنك استخدام عينة(السكان ، ك) وظيفة. تقوم بإرجاع قائمة ك عناصر عشوائية من قائمة السكان التي تم تمريرها. على سبيل المثال ، استدعاء دالة العينة([1, 2, 3, 4, 5], 3) يمكنه إرجاع القائمة [2 ، 4 ، 1].
    2. توفر الوحدة العشوائية أيضا وظائف لتوليد أرقام عشوائية باستخدام توزيعات مختلفة ، مثل التوزيع الطبيعي والتوزيع الموحد وغيرها.
    3. يعد العمل باستخدام الأرقام العشوائية الزائفة جزءا مهما من البرمجة ويمكن أن يكون مفيدا في مهام مختلفة مثل إنشاء مواقف ألعاب عشوائية ، وإنشاء بيانات اختبار عشوائية ، والتشفير ، وما إلى ذلك.

    استخدام أرقام عشوائية في التطبيقات

    تعد الأرقام العشوائية مكونا مهما للعديد من التطبيقات ، خاصة عند إنشاء قيم فريدة أو سلوك عشوائي مطلوب. في البرمجة ، يمكن استخدام الأرقام العشوائية لمهام مختلفة مثل إنشاء البيانات العشوائية والتشفير وتوليد الأحداث العشوائية.

    1. يمكن استخدام طرق مختلفة لإنشاء رقم عشوائي في التطبيق. واحدة من الأكثر شيوعا هو استخدام مولد عدد كاذب. تولد هذه الخوارزمية أرقاما تبدو عشوائية ، ولكن يتم تحديدها بالفعل بواسطة صيغة رياضية محددة.
    2. هناك العديد من الطرق لإنشاء أرقام عشوائية بلغات برمجة مختلفة. فيما يلي بعض الأمثلة على استخدام الأرقام العشوائية:
    3. إنشاء معرفات فريدة: غالبا ما تحتاج التطبيقات إلى إنشاء معرفات فريدة للكائنات ، على سبيل المثال ، للمستخدمين أو المنتجات. يمكن استخدام رقم عشوائي لإنشاء معرف فريد لن يتكرر.

    اختيار عشوائي لعنصر: هناك العديد من الاحتمالات للاختيار العشوائي في التطبيقات. على سبيل المثال ، الاختيار العشوائي لراية إعلانية ، أو الاختيار العشوائي لمقطع موسيقي ، أو الاختيار العشوائي للفائز في مسابقة.

    تشفير البيانات: في بعض الحالات ، يمكن استخدام أرقام عشوائية لتشفير البيانات ، حيث يمكنها إنشاء مفاتيح فريدة لحماية المعلومات.

    توليد السلوك العشوائي: يمكن أيضا استخدام الأرقام العشوائية لإنشاء سلوك عشوائي في الألعاب أو التطبيقات الأخرى. يمكن أن يشمل ذلك الأجسام المتحركة بشكل عشوائي ، أو إنشاء الخرائط بشكل عشوائي ، أو حتى التصرف العشوائي للأعداء.

    1. بغض النظر عن المهمة ، تعد الأرقام العشوائية جزءا لا يتجزأ من البرمجة وتطوير التطبيقات. يجب أن نتذكر أن الأرقام العشوائية الزائفة ليست عشوائية تماما ، لذلك قد تتطلب بعض المهام نهجا خاصا أو استخدام مصادر عشوائية للأجهزة لإنشاء أرقام عشوائية عالية الجودة.
    2. خوارزميات لتوليد عناصر عشوائية
    3. يعد إنشاء عناصر عشوائية مهمة مهمة في البرمجة. اعتمادا على المهمة المحددة ، يمكن استخدام خوارزميات مختلفة لإنشاء أرقام أو عناصر عشوائية.

    1. أرقام عشوائية زائفة

    الطريقة الأكثر شيوعا لإنشاء أرقام عشوائية هي استخدام أرقام عشوائية زائفة. يتم إنشاء أرقام عشوائية زائفة بناء على رقم بداية يسمى "بذرة". يعتمد تسلسل الأرقام التي سيتم إنشاؤها على الحبوب.

    غالبا ما تستخدم الخوارزميات التالية لتوليد أرقام عشوائية زائفة:طريقة التطابق الخطي: هذه واحدة من أبسط الخوارزميات لتوليد أرقام عشوائية زائفة. يعتمد على علاقة تكرار خطية ، حيث يتم حساب الرقم الحالي باستخدام الرقم السابق وفقا لصيغة معينة.طريقة فيبوناتشي: تولد هذه الخوارزمية أرقاما باستخدام الأرقام السابقة لتسلسل فيبوناتشي. يتم حساب الرقم الحالي باستخدام الرقمين السابقين.
    طريقة ميرسين: تستخدم هذه الخوارزمية أرقام ميرسين الخاصة كحبوب لتوليد أرقام عشوائية. أرقام ميرسين هي أرقام لها النموذج 2^ن-1 ، أين ن هو عدد أولي.2. توليد عنصر عشوائي من بعض مجموعةإذا كنت تريد تحديد عنصر عشوائي من مجموعة معينة ، فيمكنك استخدام الخوارزمية التالية:
    حدد عدد العناصر في المجموعة.قم بإنشاء رقم عشوائي من 0 إلى عدد العناصر ناقص 1.حدد العنصر مع الفهرس المستلم من المجموعة.
    مثال على ذلك هو اختيار بطاقة عشوائية من مجموعة أوراق اللعب أو اختيار اسم عشوائي من قائمة الأسماء.3. توليد إحداثيات عشوائيةإذا كنت تريد إنشاء إحداثيات عشوائية على المستوى ، فيمكنك استخدام الخوارزمية التالية:

    حدد الحدود على طول المحور السيني وعلى طول المحور الصادي.

    قم بإنشاء رقم عشوائي داخل الحدود المحددة للمحور السيني والمحور الصادي.

    استخدم الأرقام الناتجة كإحداثيات للنقطة.

    يمكن استخدام مثل هذه الخوارزمية ، على سبيل المثال ، لإنشاء نقاط عشوائية على الخريطة أو مواضع بدء عشوائية للكائنات في اللعبة.

    مقارنة الخوارزميات لتوليد عناصر عشوائية

    الخوارزمية

    المزايا

    العيوب

    أرقام عشوائية زائفة

    سهلة التنفيذ ، قيم عشوائية إلى حد ما

    يمكن تكرار تسلسل الأرقام بنفس الحبوب

    توليد من مجموعة

    القدرة على تحديد عنصر عشوائي من مجموعة معينة