p1rofiletest

کاربر  یک عدد (عددی بین ۱ تا ۹۹) را در ذهن خود مشخص می کنه و به کامپیوتر این عدد راباید حدس بزنه

p1rofiletest ۱۳۹۷/۰۷/۲۱ 206 مباحث عمومی برنامه‌نویسی

سلام ممکنه در مورد این برنامه راهنمایی ام کنید یا بنویسید که باید چیکار بکنم 
مراحل بازی به این ترتیب می باشد:

ابتدا کاربر  یک عدد را در ذهن خود مشخص می کند و به کامپیوتر این عدد را نمی گوید (به عنوان ورودی به کامپیوتر عدد را نمی دهد)(عددی بین ۱ تا ۹۹)

برنامه را اجرا می کنیم

برنامه یک عدد را حدس زده و چاپ می کند 

عدد چاپ شده سه حالت را  ایجاد می کند

۱-یا از عددی که شما در ذهن خود دارید بزرگتر هست که شما با تایپ حرف k به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده کوچکتر است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ k برنامه باید عدد کوچکتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)

۲-و یا اینکه عدد چاپ شده از از عددی که شما در ذهن خود دارید کوچکتر هست که با تاپ حرف b به برنامه می گویید که عدد در ذهن شما از عددی که برنامه چاپ کرده بزرگتر  است و برنامه باید عدد دیگری را حدس زده و نمایش بدهد و ... (قابل ذکر است که در این حالت با تایپ b برنامه باید عدد بزرگتری از حدس قبلی خود حدس بزند تا بازی زودتر تمام شود)

۳- و یا اینکه عدد چاپ شده همان عددی است که در ذهن شما بود و با تایپ حرف d به برنامه می گویید که درست حدس زده و برنامه تمام می شود

پاسخ‌ها به این تاپیک
امیررضا اقتداری
امیررضا اقتداریدولوپر ios هستم، برنامه‌نویسی و گرافیک رو بسیار دوست دارم.
۱۳۹۷/۰۷/۲۱

سلام

بهترین متد برای نوشتن چنین برنامه‌هایی استفاده از الگوریتم ریکرسیو هست. یه نمونه دیگه‌اش رو  به همراه رفرنس توی این تاپیک می‌تونی ببینی.

به هر حال من یه تیکه سودوکد برات نوشتم که خودت باید پیاده‌سازیش کنی.

https://sokanacademy.com/forum/8689/نحوه-گرفتن-و-بررسی-تمام-زیر-پوشه-های-یک-پوشه#post-8708

 

توی این کد شما یه فانکشن می‌نویسی به نام SerachForRightAnswer  و اون رو فقط یک بار، و با مقادیر ۱ و ۹۹ به ازای minو maxکال میکنی.

داخل SearchForRightAnswerاز یک فانکشن به اسم Randomهم استفاده کردم که معادلش توی تمام زبان‌های برنامه‌نویسی هست و یک عدد تصادفی بین دو عدد حداقل و حداکثر تولید می‌کنه.

 

موفق باشید.

func SearchForRightAnswer(min, max) {
	rand = random(min, max)
	if (ask user if rand is the right answer) {
		congratulations to you.
	} else if (rand is greater than the right answer) {
		SearchForRightAnswer(min, rand)
	} else {
		SearchForRightAnswer(rand, max)
	}
}