اعداد تصادفی در جاوا اسکریپت
خوش اومدین به بیست و هشتمین جلسه از دوره آموزش جاوا اسکریپت. ما توی بخش های قبلی کار با توابع ریاضی رو یاد گرفتیم. یکی از این توابع، تابع random بود که یه عدد تصادفی بین 0 و 1 رو برمیگردوند. حالا میخوایم با استفاده از این تابع و ترکیب اون با توابع دیگه، یک تابع جدید ایجاد کنیم که یک عدد تصادفی رو در رنج دلخواه ما برگردوونه.
در جاوا اسکریپت، میتوانید اعداد تصادفی را با استفاده از توابع مربوطه ای که در زبان موجود هستند، ایجاد کنید. یکی از این توابع Math.random() است که عددی تصادفی بین 0 و 1 برمیگرداند. با استفاده از این تابع و ترکیب آن با ریاضیات ساده، میتوانید بازههای مختلفی از اعداد تصادفی را ایجاد کنید.
برای مثال، اگر بخواهید عدد تصادفی بین دو عدد a و b را ایجاد کنید، میتوانید از روابط زیر استفاده کنید:
var a = 1;
var b = 10;
var randomNumber = Math.random() * (b - a) + a;
در این مثال، Math.random()
عدد تصادفی بین 0 و 1 را برمیگرداند. سپس آن را در بازه (b - a)
ضرب میکنیم تا عدد تصادفی در بازه (0, b - a)
به دست آید، و سپس a
را به آن اضافه میکنیم تا عدد تصادفی در بازه (a, b)
قرار گیرد.
اکنون میتوانید با تغییر مقادیر a
و b
، بازههای مختلفی از اعداد تصادفی را ایجاد کنید.
در جاوا اسکریپت، علاوه بر تابع Math.random()
، توابع دیگری نیز برای ایجاد اعداد تصادفی وجود دارند. در ادامه، نمونههای دیگری از ایجاد اعداد تصادفی را آوردهام:
ایجاد عدد تصادفی بین 0 و 1:
var randomNumber = Math.random();
ایجاد عدد تصادفی در محدودهٔ خاص:
var min = 1;
var max = 100;
var randomNumber = Math.random() * (max - min + 1) + min;
در این حالت، randomNumber
عدد تصادفی بین 1 و 100 را برمیگرداند.
ایجاد عدد صحیح تصادفی در محدودهٔ خاص:
var min = 1;
var max = 10;
var randomInteger = Math.floor(Math.random() * (max - min + 1)) + min;
در این مثال، randomInteger
یک عدد صحیح تصادفی بین 1 و 10 را برمیگرداند.
ایجاد عدد تصادفی بین 0 و 1 با توزیع نرمال (گاوسی):
function generateRandomNumberWithNormalDistribution(mean, stdDev) {
var u = 0, v = 0;
while (u === 0) u = Math.random(); // بازه باز را از بین می برد
while (v === 0) v = Math.random(); // بازه باز را از بین می برد
var randomNumber = Math.sqrt(-2.0 * Math.log(u)) * Math.cos(2.0 * Math.PI * v);
return randomNumber * stdDev + mean;
}
var mean = 0; // میانگین
var stdDev = 1; // انحراف معیار
var randomNumber = generateRandomNumberWithNormalDistribution(mean, stdDev);
این نمونه، یک تابع به نام generateRandomNumberWithNormalDistribution
را تعریف میکند که یک عدد تصادفی با توزیع نرمال (گاوسی) برمیگرداند، با توجه به میانگین و انحراف معیار مشخص شده.
این توابع به عنوان نمونههایی از ایجاد اعداد تصادفی در جاوا اسکریپت قابل استفاده هستند. شما میتوانید آنها را به نیازهای خود تطبیق
دهید و مقادیر مورد نظر خود را به آنها اختصاص دهید.