توليد أرقام عشوائية في أي نطاق
هل تحتاج إلى رقم بين 1 و100، أو ستة أرقام لليانصيب، أو قائمة تضم 1,000 قيمة عشوائية لاختبار؟ يقوم مولد الأرقام العشوائية هذا باختيار أرقام في أي نطاق تحدده، مع خيارات لمنع التكرار، والفرز، وإضافة الخانات العشرية. تعتمد الأداة على التشفير الآمن للمتصفح الخاص بك لضمان العشوائية، مما يجعل النتائج غير متوقعة وموزعة بالتساوي، دون إرسال أي بيانات إلى الخادم.
الميزات
- أي نطاق، بما في ذلك الأرقام السالبة والقيم الكبيرة جداً.
- رقم واحد أو عدة أرقام: يمكنك توليد ما يصل إلى 10,000 رقم بنقرة واحدة.
- بدون تكرار: وضع يسحب الأرقام عشوائياً مثل الكرات من الكيس، بكفاءة عالية حتى مع النطاقات الضخمة.
- أرقام عشرية مع ما يصل إلى ست خانات عشرية.
- فرز النتائج بترتيب تصاعدي ونسخها كقائمة.
- غير متحيزة: تضمن تقنية أخذ العينات بالرفض (rejection sampling) تساوي احتمالية ظهور كل قيمة في النطاق.
الاستخدامات الشائعة
الألعاب واتخاذ القرارات. رمي حجر نرد افتراضي (1–6)، أو تحديد من يبدأ اللعب، أو اختيار صفحة أو سؤال بشكل عشوائي، أو حسم قرار بإنصاف.
السحوبات والمسابقات. تخصيص رقم لكل مشارك، ثم سحب الفائزين بدون تكرار. ونظراً لأن العشوائية تأتي من مصدر آمن، فلا يمكن لأحد توقع النتيجة أو التأثير عليها.
اليانصيب. توليد مجموعة من الأرقام الفريدة لتذاكر اليانصيب. تتجنب الاختيارات العشوائية الأنماط الشائعة مثل أعياد الميلاد، مما يقلل من احتمالية مشاركة الجائزة مع آخرين.
التعليم والأبحاث. اختيار عينات عشوائية من قائمة مرقمة، أو توزيع المشاركين في مجموعات، أو إنشاء تمارين تدريبية.
اختبار البرمجيات. توليد مدخلات اختبار، أو معرفات، أو مجموعات بيانات نموذجية ضمن نطاق محدد.
كيف يتم توليد أرقام عشوائية "عادلة"
تعتمد الطريقة التقليدية على أخذ قيمة عشوائية كبيرة واستخدام باقي القسمة على حجم النطاق. وهذا يميل بشكل خفي لصالح بعض الأرقام عندما لا يقبل المصدر العشوائي القسمة على النطاق بالتساوي. بدلاً من ذلك، تتجاهل هذه الأداة القيم التي قد تسبب تحيزاً وتقوم بالسحب مرة أخرى ("أخذ العينات بالرفض")، بحيث يمنح النطاق من 1 إلى 3 كل رقم فرصة واحدة من ثلاثة بالضبط.
بالنسبة للسحوبات الفريدة (بدون تكرار)، تنفذ الأداة خلط فيشر-ييتس الجزئي (Fisher–Yates shuffle): من الناحية النظرية، تقوم بخلط النطاق بأكمله وتأخذ الأرقام الأولى، ولكن دون إنشاء القائمة الكاملة فعلياً، لذا فإن سحب 10 أرقام من 1 إلى 1,000,000,000 يتم بشكل فوري.
إذا كنت بحاجة إلى نصوص عشوائية بدلاً من الأرقام، جرب مولّد كلمات المرور أو مولّد UUID.