freeCodeCamp/guide/arabic/javascript/random-method/index.md

103 lines
4.9 KiB
Markdown
Raw Normal View History

---
title: Random Method
localeTitle: طريقة عشوائية
---
## طريقة عشوائية
طريقة JavaScript `Math.random()` هي طريقة مدمجة ممتازة لإنتاج أرقام عشوائية. عند تنفيذ `Math.random()` ، تقوم بإرجاع رقم عشوائي يمكن أن يكون بين 0 و 1. يتم تضمين 0 و 1 مستثنى.
### توليد رقم نقطة عائم عشوائي بين 0 و 1
سيقوم الأسلوب `Math.random()` بإرجاع رقم عشري (عشري) أكبر من أو يساوي 0 وأقل من (ولكن لا يساوي مطلقًا) 1. وبعبارة أخرى `0 <= x < 1` . فمثلا:
`console.log(Math.random());
// 0.7069207248635578
console.log(Math.random());
// 0.765046694794209
console.log(Math.random());
// 0.14069121642698246
`
(وبالطبع ، ستكون الأرقام التي يتم إرجاعها مختلفة في كل مرة. سيتم افتراض ذلك لكافة الأمثلة التالية - ستحدث نتائج مختلفة لكل تمريرة.)
للحصول على رقم عشوائي بين مجموعة أكبر `Math.random()` نتيجة `Math.random()` برقم.
### توليد رقم نقطة عائمة عشوائية بين 0 و max محدد
عادة لا تحتاج إلى أرقام عشوائية بين 0 و 1 - تحتاج إلى أعداد أكبر أو حتى أعداد صحيحة.
على سبيل المثال ، إذا كنت تريد رقم نقطة عائم عشوائيًا بين 0 و 10 ، فيمكنك استخدام:
`var x = Math.random()*10;
console.log(x);
// 4.133793901445541
`
### توليد رقم نقطة عائمة عشوائية داخل نطاق
إذا كنت تحتاج إلى رقم نقطة عائمة عشوائي يتراوح بين رقمين محددين ، فيمكنك فعل شيء كالتالي:
`var min = 83.1;
var max = 193.36;
var x = Math.random()*(max - min)+min;
console.log(x);
// 126.94014012699063
`
### توليد عدد صحيح عشوائي بين 0 و max
غالبا ما تحتاج إلى الأعداد الصحيحة. للقيام بذلك ، سيتعين عليك استخدام بعض الطرق الأخرى من كائن `Math` ، `Math.floor()` (تقريبًا إلى أقرب عدد صحيح) و `Math.ceil()` (تقريبًا إلى أقرب عدد صحيح).
على سبيل المثال ، إذا كنت تريد التحديد عشوائياً من مصفوفة من 10 عناصر ، فستحتاج إلى رقم عشوائي بين 0 و 9 ضمناً (تذكر أن المصفوفات صفر فهرستها).
`var x = Math.floor(Math.random()*10);
console.log(x);
// 7
`
(تذكر أن `Math.random()` لن ترجع بالضبط 1 ، لذلك لن يتمكن `Math.random()*10` العودة تمامًا 10. وهذا يعني أنه بعد التقريب إلى الأسفل ، ستكون النتيجة دائمًا 9 أو أقل.)
### توليد عدد صحيح عشوائي بين 1 و max
إذا كنت بحاجة إلى رقم عشوائي مع الحد الأدنى لعدد 1 (على سبيل المثال ، اختيار يوم عشوائي في يناير) ، يمكنك استخدام أسلوب `Math.ceil()` .
`var x = Math.ceil(Math.random()*31);
console.log(x);
// 23
`
طريقة أخرى كانت لاستخدام الوظيفة السابقة (باستخدام `Math.floor()` ) وإضافة 1 إليها:
`var x = Math.floor(Math.random()*31)+1;
console.log(x);
// 17
`
### توليد عدد صحيح عشوائي داخل نطاق
وأخيرًا ، تحتاج في بعض الأحيان إلى عدد صحيح عشوائي بين رقمين محددين. على سبيل المثال ، إذا كنت تحاول اختيار تذاكر يانصيب وكنت تعرف أرقام أقل وأكبر رقم:
`var min = 1718;
var max = 3429;
var x = Math.floor(Math.random()*(max-min+1)+min);
console.log(x);
//2509
`
### ما مدى عشوائية Math.random ()؟
يمكن الإشارة إلى أن الرقم الذي تم إرجاعه بواسطة `Math.random()` هو رقم زائف عشوائي حيث لا يمكن لأي كمبيوتر إنشاء رقم عشوائي حقيقي ، والذي يعرض عشوائيًا على جميع المقاييس وعلى جميع أحجام مجموعات البيانات. ومع ذلك ، فإن الرقم الزائف العشوائي الذي تولده `Math.random()` يكفي عادة لاحتياجات أي برنامج تقريبًا قد تكتبه. لا تظهر العشوائية الحقيقية فقط في مجموعات الأرقام الكبيرة الفلكية أو عندما تكون هناك حاجة إلى الكسور العشرية غير المألوفة.
### معلومات اكثر:
* الوثائق: [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/random)