PDA

View Full Version : سوال: مشكل در ايجاد عدد تصادفي غيره تكراري



saeedtrb
دوشنبه 26 فروردین 1392, 21:57 عصر
سلام دوستان كسي مي دونه چرا كد من بعضي وقتي اصلا نمياد و فقط لود مي كنه

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<script>
numArr=Array()
d=0
count=0
number=10
do
{
numRandom=String(Math.floor((Math.random()*number) +1));
if(String(numArr).search(numRandom)==-1)
{
numArr[count]=numRandom
count++
}
d++
lengthArr=numArr.length
}
while(lengthArr<number)
document.write(numArr)
</script>
</body>
</html>

***BiDaK***
دوشنبه 26 فروردین 1392, 22:12 عصر
سمی کالن های کدات کوو؟ زبان اسکریپتت کوو

saeedtrb
دوشنبه 26 فروردین 1392, 22:20 عصر
يعني اينا باشه حله ديگه
سمی کالن های کدات کوو؟ زبان اسکریپتت کوو

***BiDaK***
دوشنبه 26 فروردین 1392, 22:30 عصر
يعني اينا باشه حله ديگه
سمی کالن هارو که بزار ولی فک کنم گیر نمیده.دوباره ریلود که میکنی نمیاره؟

saeedtrb
دوشنبه 26 فروردین 1392, 22:41 عصر
نه دوست عزيز اشتباه نكن نه به سمي كالن ربط داره نه به تعيين زبان اسكريبتش اصلاً تو javascript گذاشتن سمي كالن اجباري نيست

***BiDaK***
دوشنبه 26 فروردین 1392, 22:56 عصر
نه دوست عزيز اشتباه نكن نه به سمي كالن ربط داره نه به تعيين زبان اسكريبتش اصلاً تو javascript گذاشتن سمي كالن اجباري نيست
عزیز دل توو پست قبلی گفتم .ولی اینجور که مشخصه از کدت عدد رندمی که انتخات میشه اگه همش تکراری در بیاد حلقه ی بینهایت درست میشه.و لود نمیکنه.

saeedtrb
سه شنبه 27 فروردین 1392, 20:14 عصر
آره درسته اين حلقه بي نهايت ميشه ؟ حالا به نظرت چه جوري مي تونم اين كارو بكنم؟

***BiDaK***
سه شنبه 27 فروردین 1392, 22:29 عصر
خوب بازه ی عدد رندمتو بجای اینکه تا 10 بزاری مثلا تا 20 بزار.

jalil_gh
پنج شنبه 29 فروردین 1392, 11:15 صبح
اگه درست متوجه شده باشم شما یک آرایه میخایید که اعداد یک تا ده تو اون به صورت رندم باشه. برای این کار اول اعداد یک تا ده را تو آرایه قرار بده و بعدش اونا رو shuffle کن.

// You can also use for loop for populating this array.
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

function shuffle () {
return 0.5 - Math.random();
};

numbers.sort(shuffle);

الان آرایه numbers به صورت رندم در اومده.
در ضمن توصیه میکنم یه نگاهی به کتاب javascript the good parts بندازی.

jalil_gh
پنج شنبه 29 فروردین 1392, 11:17 صبح
اگه درست متوجه شده باشم شما یک آرایه میخایید که اعداد یک تا ده تو اون به صورت رندم باشه. برای این کار اول اعداد یک تا ده را تو آرایه قرار بده و بعدش اونا رو shuffle کن.

// You can also use for loop for populating this array.
var numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

function shuffle () {
return 0.5 - Math.random();
};

numbers.sort(shuffle);

الان آرایه numbers به صورت رندم در اومده.
در ضمن توصیه میکنم یه نگاهی به کتاب javascript the good parts بندازی.