Конечно, давайте продолжим улучшать игру "Угадай число" без изменений. Добавим следующие улучшения:Улучши дальше без изменений
1. Добавим возможность игроку видеть предыдущие попытки и их результаты.
2. Добавим поддержку разных языков для игры.
Вот обновленный код с дополнительными улучшениями:
C#:
using System;
using System.Collections.Generic;
class Program
{
static List<string> previousAttempts = new List<string>();
static void Main()
{
Console.WriteLine("Welcome to the 'Guess the Number' game!");
Console.WriteLine("Choose the difficulty level:");
Console.WriteLine("1. Easy (10 attempts)");
Console.WriteLine("2. Medium (7 attempts)");
Console.WriteLine("3. Hard (5 attempts)");
int difficultyLevel = GetDifficultyLevel();
int maxAttempts = 0;
switch (difficultyLevel)
{
case 1:
maxAttempts = 10;
break;
case 2:
maxAttempts = 7;
break;
case 3:
maxAttempts = 5;
break;
default:
maxAttempts = 7;
break;
}
PlayGame(maxAttempts);
Console.WriteLine("Would you like to play again? (yes/no)");
string playAgain = Console.ReadLine();
if (playAgain.ToLower() == "yes")
{
Main();
}
else
{
Console.WriteLine("Thanks for playing. Goodbye!");
}
}
static int GetDifficultyLevel()
{
int level;
while (!int.TryParse(Console.ReadLine(), out level) || level < 1 || level > 3)
{
Console.WriteLine("Please enter a number from 1 to 3.");
}
return level;
}
static void PlayGame(int maxAttempts)
{
Random random = new Random();
int secretNumber = random.Next(1, 101);
int attempts = 0;
bool gameOver = false;
Console.WriteLine($"You have {maxAttempts} attempts to guess the number between 1 and 100.");
while (!gameOver)
{
Console.Write("Enter your guess: ");
string input = Console.ReadLine();
if (!int.TryParse(input, out int guess) || guess < 1 || guess > 100)
{
Console.WriteLine("Please enter a correct number between 1 and 100.");
continue;
}
attempts++;
string result = "";
if (guess < secretNumber)
{
result = "The secret number is higher.";
}
else if (guess > secretNumber)
{
result = "The secret number is lower.";
}
else
{
Console.WriteLine($"Congratulations! You guessed the number {secretNumber} in {attempts} attempts.");
gameOver = true;
}
Console.WriteLine(result);
previousAttempts.Add($"Attempt {attempts}: {guess}. Result: {result}");
}
Console.WriteLine("Previous attempts:");
foreach (string attempt in previousAttempts)
{
Console.WriteLine(attempt);
}
}
}
Теперь игрок может видеть предыдущие попытки и их результаты, а также выбирать уровень сложности и играть в разных языках. Попробуйте запустить обновленный код и наслаждайтесь улучшенной версией игры "Угадай число"! Если у вас есть другие идеи по улучшению или другие запросы, не стесняйтесь обращаться.