این ابزار درست کار نمی‌کند؟

دربارهٔ ابزار «تولید عدد تصادفی آنلاین»

این ابزار با استفاده از منبع تصادفی رمزنگاری سیستم شما اعداد تصادفی تولید می‌کند. محدوده (حداقل و حداکثر)، تعداد اعدادی که می‌خواهید تولید کنید، و اینکه آیا تکرار را مجاز کنید مشخص کنید — ابزار هر بار یک توالی تازه و بی‌طرفانه تولید می‌کند.

اعداد تصادفی برای قرعه‌کشی‌ها، نمونه‌برداری تصادفی، شبیه‌سازی‌های علمی، طراحی بازی (مواجهه‌های تصادفی، loot drops، رول‌های تاس)، تولید رمز عبور، و تجزیه و تحلیل آماری مورد نیاز هستند.

خروجی می‌تواند یکی در هر خط، جدا شده با کاما، یا به عنوان یک آرایه JSON باشد. از حالت منحصربه‌فرد برای انتخاب‌های سبک قرعه‌کشی استفاده کنید که هیچ عدد نباید تکرار شود؛ از مجاز بودن تکرار برای شبیه‌سازی شیر یا خط، رول‌های تاس، یا سایر رویدادهای تصادفی مستقل استفاده کنید.

چطور از این ابزار استفاده کنم؟

چطور یک عدد صحیح تصادفی در یک بازهٔ inclusive انتخاب‌شده تولید کنم؟

  1. بازه را تنظیم کنید

    «Min» و «Max» مرزهای inclusive هستند. ابزار یک عدد صحیح N با `min ≤ N ≤ max` برمی‌گرداند. مرزهای برابر همان یک مقدار را هر بار تولید می‌کنند؛ اگر `min > max` ابزار خطای «Min must be ≤ max» می‌دهد.

  2. «اجرا» را بزنید

    خروجی یک فیلد `value` است. توزیع uniform است — هر عدد صحیح در بازه به یک اندازه محتمل است. توسط `Math.random()` ارائه می‌شود که برای trivia و tie-breaker خوب است اما cryptographically secure نیست.

  3. وقتی به crypto strength نیاز دارید

    هر چیزی شامل پول، قرعه‌کشی، security token یا anti-fraud نباید از این ابزار استفاده کند. سمت سرور با `crypto.randomInt(min, max + 1)` (Node) یا `window.crypto.getRandomValues` در مرورگرها تولید کنید.

  4. اجتناب از bias برای بازه‌های کوچک

    برای بازه‌هایی با ۲-۳ مقدار، تفاوت بین `Math.random()` و crypto-strength غیرقابل‌تشخیص است. برای نمونه‌گیری هزاران بازهٔ کوچک پشت سر هم (مثلاً shuffling)، bias تجمعی `Math.random` قابل‌اندازه‌گیری می‌شود.