در جاوا اسکریپت، میتوانید اعداد تصادفی غیر تکراری را با استفاده از آرایهها و توابع ریاضی تولید کنید. یک روش برای این کار به صورت زیر است:
function generateRandomNonRepeatingNumbers(min, max, count) {
if (count > (max - min + 1)) {
return "تعداد اعداد درخواستی بیشتر از محدوده است.";
}
var numbers = [];
for (var i = min; i <= max; i++) {
numbers.push(i);
}
var randomNumbers = [];
for (var j = 0; j < count; j++) {
var randomIndex = Math.floor(Math.random() * numbers.length);
var randomNumber = numbers[randomIndex];
randomNumbers.push(randomNumber);
numbers.splice(randomIndex, 1);
}
return randomNumbers;
}
// مثال استفاده
var randomNumbers = generateRandomNonRepeatingNumbers(1, 10, 5);
console.log(randomNumbers);
در این مثال، تابع generateRandomNonRepeatingNumbers
سه پارامتر دریافت میکند: حداقل و حداکثر مقدار مورد نظر و تعداد اعداد تصادفی غیر تکراری که میخواهید تولید کنید. این تابع ابتدا یک آرایه از اعداد مورد نظر را ایجاد میکند، سپس تعداد اعداد تصادفی مورد نظر را از این آرایه انتخاب میکند و به آرایهای جدید اضافه میکند. در نهایت، آرایهی حاوی اعداد تصادفی غیر تکراری را برمیگرداند.
لطفا توجه داشته باشید که این روش برای تولید اعداد تصادفی غیر تکراری در محدودههای بزرگ ممکن است کارایی پایینی داشته باشد.
دیدگاهها