C #: пробовать простой проект - PullRequest
3 голосов
/ 14 ноября 2008

Я новичок в C #. Я хотел сделать простую программу с некоторыми типами циклов. Я хотел, чтобы моя программа зациклилась на числах, которые вводит пользователь, и если оно меньше числа, напишите, продолжайте угадывать, но как только они введут число 25, я хотел, чтобы это было с Рождеством.

int number;

do
{
    Console.WriteLine("Guess a number between 20 through 25");
    number = int.Parse(Console.ReadLine());
}  while (number < 25);

C # Начинающий

Ответы [ 6 ]

6 голосов
/ 14 ноября 2008

Попробуйте следующее:

int number = 0;
while (number != 25)
{
    Console.WriteLine("Guess a number between 20 through 25");
    number = int.Parse(Console.ReadLine());
    if (number != 25)
        Console.WriteLine("Keep guessing");
    else
        Console.WriteLine("Merry Christmas");
}
2 голосов
/ 14 ноября 2008

Если вы никогда не собираетесь использовать входные данные в качестве числа, безопаснее просто оставить строку, особенно, если вы точно проверяете только «25». Кроме того, для пользователя было бы неплохо добавить способ выхода без ввода 25, например, ввести пустую строку.

Вот как бы я это написал:

    static void x()
    {
        Console.WriteLine("Guess a number between 20 through 25");
        string input = null;
        while(true)
        {
            input = Console.ReadLine();
            if (input == null || input.Length == 0)
                break; // will exit the loop
            if (input != "25")
                Console.WriteLine("Keep guessing");
            else
            {
                Console.WriteLine("Merry Christmas");
                break;
            }
        }
    }
2 голосов
/ 14 ноября 2008

Я не уверен, что ваш вопрос, но у меня есть пара комментариев:

  1. Будет сгенерировано исключение, если пользователь введет что-то, что не может быть проанализировано как int. Исправьте это, используя TryParse.

  2. Как написано, цикл завершится, если пользователь введет число больше 25, например, 26.

Модифицированный код:

int number;
do
{
    Console.WriteLine("Guess a number between 20 through 25");
    int.TryParse(Console.ReadLine(), out number);
} while (number != 25);
1 голос
/ 14 ноября 2008
int number;

do
{
    Console.WriteLine("Guess a number between 20 through 25");
    number = int.Parse(Console.ReadLine());
} while (number < 25);

if (number == 25)
    Console.WriteLine("Merry Christmas");
0 голосов
/ 14 ноября 2014
        int myNumber;

        Guess: Console.Write("Guess a number between 20 through 25: ");
        myNumber = int.Parse(Console.ReadLine());

            while(myNumber != 25)
            {
                Console.WriteLine("Keep Guessing");
                goto Guess;
            }
            Console.Write("Merry Christmas");

        Console.ReadKey();
0 голосов
/ 14 ноября 2008
int number;

do
{
    Console.WriteLine("Guess a number between 20 through 25");
    number = int.Parse(Console.ReadLine());
} while (number != 25);

Console.WriteLine("Merry Christmas");

Было бы правильно, если бы вы хотели, чтобы они могли вводить числа больше 25.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...