آرایه ها و ایجاد پرسش و پاسخ
#1
با سلام خسته نباشید
من می خوام بازی بسازم که توش حدود مثلا 10 تا سوال و 40 تا پاسخ وجود داره که فقط 10 تا از پاسخ ها ، جواب اون ده تا سوال ها هستن. حال می خوام کاری کنم که مثلا وقتی بازی شروع کامپیوتر بصورت اتوماتیک از بین 10 تا سوال یکی رو انتخاب کنه و از بین 40 تا پاسخ هم 4تاشون رو انتخاب کنه که تو اون 4تا یکی جواب اصلیه. و می خوام وقتی کاربر روی جواب صحیح کلیک کرد همین عمل تکرار بشه ولی این سوال ها و جواب هایی که یک بار داده دیگه تکرار نشه. منظورم چیزی شبیه بازی های حدس لوگو
اگر تونستید که سورس بگذارید لطفا در غیر اینصورت ممنون میشم اگر توضیح بدهید.
موفق باشید
کانال تلگرام معرفی و دانلود بازی، نقد و بررسی، مصاحبه با سازندگان و...
  پاسخ


 سپاس شده توسط: mehrad77
#2
سلام. اگه درست منظورتونو متوجّه شده‌باشم مشکلتون تولید اعداد رندوم غیر تکراری هست. برای رفع این مشکل می‌تونید از الگوریتم فیشر-یاتس استفاده کنید.
به این صورت که:
نقل قول:  
To shuffle an array a of n elements (indices 0..n-1):
  for i from 0 to n − 1 do
       j ← random integer with i ≤ j < n
       exchange a[j] and a[‌i]

یعنی برای به هم ریختن ترتیب عناصر یک آرایه:
  یک حلقه‌ی for قرار دهید که شمارنده‌ی i آن (loopindex) از صفر تا یکی کمتر از تعداد خانه‌های آرایه باشد،این حلقه باید شامل این دستورات باشد:
       عدد رندوم j به طوری که بین شمارنده‌ی i و تعداد خانه‌های آرایه باشد تولید شود.
       محتویّات خانه‌ی j ام آرایه با خانه‌ی i ام عوض شود.

 
معجزات طبیعت هایی هستند که با آن‌ها مأنوس نشده‌ایم
و طبیعت معجزه‌ایست که با آن انس گرفته‌ایم
علی صفایی حائری
  پاسخ


 سپاس شده توسط: mehrad77 ، Amirns


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
Information پرداخت درون برنامه مایکت کوردوا ya mahdi 0 230 1404/1/17، 05:43 عصر
آخرین ارسال: ya mahdi
  نحوه خروجی اندروید کوردوا ya mahdi 0 178 1404/1/11، 04:06 عصر
آخرین ارسال: ya mahdi
Wink حل شده مقادير لازم در environment variable ᔕinaᗪehghani 24 11,596 1403/10/23، 12:10 صبح
آخرین ارسال: Tggi
  تپسل .....فروشگاه Hamidreza 3 1,932 1403/10/22، 11:57 عصر
آخرین ارسال: Tggi
  خروجی اندروید با Intel xdk ya mahdi 0 130 1403/8/25، 02:08 عصر
آخرین ارسال: ya mahdi

پرش به انجمن: