تعداد فروش | 0 دانشجو |
---|---|
پرسش و پاسخ ها | 0 کاربر |
تاریخ انتشار | 05 آذر 1401 |
محتوا شامل | سورس کد |
سطح تمرین | سخت |
سیستم عامل | لینوکس, ویندوز |
نیازمندی ها | نیاز به نصب موردی نیست |
سوال : بازی حدس کلمه را پیاده سازی کنید که مانند تصویر زیر یک سطر حروف بهم ریخته و یک سطر اعداد باشند و کاربر کلمه را با کمک اعداد ترتیبی تکمیل نماید .
ویدیو دمو بازی :
توضیحات :
برای پیاده سازی سورس کد بازی حدس کلمه در زبان جاوا اسکریپت ابتدا باید آرایه از کلمات صحیح را تعریف کنیم .
تمرین ایجاد پسورد تصادفی در جاوا اسکریپت
آرایه ای از کلمات
const words=["پایانترم","بزرگوار","افسردگی","شهریور","دانشنامه"];
سپس الگوریتم بدین صورت میباشد که باید ابتدا یکی از کلمات را به صورت رندوم انتخاب کنیم .
انتخاب کلمه ای از آرایه
var wordselectedindex= Math.floor(Math.random() * words.length); var wordselected = words[wordselectedindex];
سپس از word selected ، کاراکتر به کاراکتر پیمایش میکنیم و به صورت رندوم به کاربر نمایش میدهیم .
for (var i=0;i < wordselected.length;i++){ var td = document.createElement('td'); var rnd=0; while (dupp.includes(rnd)){ rnd = Math.floor(Math.random() * wordselected.length); } dupp.push(rnd); td.innerText = wordselected[rnd]; wordelement.appendChild(td); }
در ادامه اعداد را به ترتیب نمایش میدهیم .
for (var i = 0 ; i < wordselected.length;i++){ var td = document.createElement('td'); td.innerText = i+1; numberelement.appendChild(td); }
زمانی که کاربر بر روی هر ستون کلیک میکند ترتیب کلیک را در آرایه ای ذخیره میکنیم و همچنین پس زمینه را سبز میکنیم .
آرایه انتخابی کاربر را با آرایه random مقایسه میکنیم .
در صورت درست بودن پیغام درست و در غیر این صورت پیغام غلط را چاپ میکنیم .
با استفاده از تابع isNumeric چک میکنیم که اگر کاربر عدد انتخاب کرده بود آرایه ای از اعداد تشکیل میدهیم .
اگر کاربر رشته انتخاب کرده بود در آرایه رشته ها اطلاعات را برای مقایسه ذخیره میکنیم .
$("#tbl").on("click", "td ", function() { $( this ).css("background-color","green"); if (isNumeric($(this).text()) == true){ numberselecteduser.push(parseInt($(this).text())); } if (isNumeric($(this).text()) == false) { counter++; userselected.push($(this).text()); if (counter == wordselected.length) { for (var i = 0 ; i < userselected.length;i++){ struser += userselected[i]; } var check = false; if (numberselecteduser.length == 0 )check = true ; for (var j=1;j <= numberselecteduser.length ;j++){ if (j != numberselecteduser[j-1]){ check =true; } } if (wordselected == struser && check == false ) { alert("درست"); } else { alert("نادرست"); } } } });
نکته : با استفاده از کامپایلر Online GDB میتوانید سورس کد را اجرا نمایید .
پرسش و پاسخ ها
هنوز بررسیای ثبت نشده است.