Darsliklar JavaScript Tasodifiy (random)

JavaScript JavaScript Tasodifiy (random)

Tasodifiy sonlar (random) — oldindan aytib bo’lmaydigan qiymat hosil qilish vositasi. O’yinlarda zar tashlash, ro’yxatdan tasodifiy element tanlash, parol generatsiyasi, reklama aylanmasi — bularning bari tasodifiy songa tayanadi. JavaScript’da bu vazifani Math.random bajaradi.

Math.random()0 (kiradi) dan 1 (kirmaydi) gacha bo’lgan tasodifiy kasr son qaytaradigan metod. Boshqa oraliqdagi sonlarni undan hisoblab olamiz.

Math.random asosi

Math.random() har chaqirilganda 0 va 1 orasida yangi tasodifiy son beradi:

console.log(Math.random());
console.log(Math.random());
0.4738291056
0.9021736482

Har chaqiruvda boshqa qiymat chiqadi. Bu son har doim 0 dan 1 gacha (1 hech qachon chiqmaydi) bo’ladi.

Ma’lum oraliqdagi butun son

Amalda bizga ko’pincha ma’lum oraliqdagi butun son kerak bo’ladi. Buning uchun Math.random ni ko’paytirib, Math.floor bilan yaxlitlaymiz:

// 1 dan 6 gacha (zar)
let zar = Math.floor(Math.random() * 6) + 1;
console.log("Zar: " + zar);
Zar: 4

Formulani tushunamiz: Math.random() * 6 — 0 dan 6 gacha kasr son beradi, Math.floor uni 0-5 butun songa aylantiradi, + 1 esa oraliqni 1-6 ga suradi. Bu naqshni yodda tuting — u universal.

Umumiy formula

Har qanday oraliq uchun formula bir xil. Uni jadvalda ko’ramiz:

Maqsad Formula
0 dan n gacha Math.floor(Math.random() * n)
min dan max gacha Math.floor(Math.random() * (max - min + 1)) + min

Amalda 10 dan 20 gacha son:

let min = 10, max = 20;
let son = Math.floor(Math.random() * (max - min + 1)) + min;
console.log(son);
17

Tasodifiy element tanlash

Massivdan tasodifiy element tanlash — tez-tez uchraydigan amaliy vazifa:

let ismlar = ["Farrux", "Master Sherkulov", "Aziz", "Dilnoza"];
let tasodifiy = ismlar[Math.floor(Math.random() * ismlar.length)];
console.log("Tanlangan: " + tasodifiy);
Tanlangan: Master Sherkulov

Bu yerda tasodifiy indeks hosil qilib, massivdan element tanladik. Bu, masalan, g’olibni tanlash yoki tasodifiy tavsiya ko’rsatishda ishlatiladi.

Xulosa

Bu bo’limda Math.random bilan tasodifiy son hosil qilish, uni ma’lum oraliqqa aylantirish formulasini va massivdan tasodifiy element tanlashni ko’rib chiqdik. Tasodifiylik — o’yinlar va interaktiv ilovalarning muhim qismi. Keyingi darsda taqqoslash va mantiqiy qiymatlarga o’tamiz.