在我的猜谜游戏中创建一个循环

本文关键字:一个 循环 创建 我的 游戏 | 更新日期: 2023-09-27 18:21:13

如果玩家答错了,我该如何重复此代码/游戏?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Random RandomGenerator = new Random();// random number generator
            Console.WriteLine("i have thought of a number between 1 and 100");//display message
            //
            //
            int IN_RandomNum = RandomGenerator.Next(1, 100); //the range
            //loop 10 times 
            for (int i = 0; i < 10; i++) //for loop created
            {
                int IN_Guess; //guessing integer
                Console.Write("{0} turns left, enter your next guess>", 10 - i);//number of turns players has 
                //
                IN_Guess = Convert.ToInt32(Console.ReadLine()); //string to number
                //Now check if guess is same as generated 
                if (IN_Guess == IN_RandomNum)//if guess is equal to generated number
                {
                    Console.WriteLine("correct in {0} turns", i + 1); //if guessed correctly 
                    break; //breaking code
                }
                else if (IN_Guess > IN_RandomNum) //if guess is higher than generated number
                {
                    Console.WriteLine("Too high");// if guessed number is too high
                }
                else //then...
                {
                    Console.WriteLine("Too low"); // if guessed number is too low
               } if (i==8) //on last turn display this message
                {
                    Console.WriteLine("*YOU ONLY HAVE 1 GUESS LEFT!*"); //display this message 
                }
            }
            Console.WriteLine("please press enter to quit"); //display message
            Console.ReadLine();//keeps application open until enter button hit
        }
    }
}

请帮忙,因为我真的不知道把while循环放在哪里。。。我的想法用完了

在我的猜谜游戏中创建一个循环

您需要将所有内容包装在while循环中。

当它退出你的for循环时,他们是赢是输都无关紧要——你回到顶端,重新开始,生成一个新的随机数。

在阅读下面的代码之前,请参阅我上面的建议并亲自尝试,看看你是否可以破解它

类似这样的东西:

static void Main(string[] args)
{
    Random RandomGenerator = new Random();// random number generator
    while (true)
    {
        Console.WriteLine("i have thought of a number between 1 and 100");//display message
        bool guessedCorrect = false;
        int IN_RandomNum = RandomGenerator.Next(1, 100); //the range
                                                            //loop 10 times 
        for (int i = 0; i < 10; i++) //for loop created
        {
            int IN_Guess; //guessing integer
            Console.Write("{0} turns left, enter your next guess>", 10 - i);//number of turns players has 
                                                                            //
            IN_Guess = Convert.ToInt32(Console.ReadLine()); //string to number
                                                            //Now check if guess is same as generated 
            if (IN_Guess == IN_RandomNum)//if guess is equal to generated number
            {
                Console.WriteLine("correct in {0} turns", i + 1); //if guessed correctly 
                guessedCorrect = true;
                break; //breaking code
            }
            else if (IN_Guess > IN_RandomNum) //if guess is higher than generated number
            {
                Console.WriteLine("Too high");// if guessed number is too high
            }
            else //then...
            {
                Console.WriteLine("Too low"); // if guessed number is too low
            }
            if (i == 8) //on last turn display this message
            {
                Console.WriteLine("*YOU ONLY HAVE 1 GUESS LEFT!*"); //display this message 
            }
        }
        if (guessedCorrect)
        {
            Console.WriteLine("Good job... Lets try again");
        }
        else
        {
            Console.WriteLine("Better luck next timer... here we go");
        }
    }
}

附言:我每次尝试都输了,你的游戏太难了:-(