Предмет: Другие предметы, автор: suiskander

Написать игру в которой имитируется бросание кубиков игроком. Игра должна представлять собой консольное приложение. В игре 2 кубика и на каждом из них может выпасть от 1 до 6 очков. Пользователь загадывает число от 2 до 12, затем бросает кости. После броска показать, нарисованные символами кубики и количество очков, выпавших на них.

Конечное число выигранных очков будет высчитываться по формуле:

x - Math.Abs(x-y)*2, где:

x - количество очков выпавшее на костях

y - загаданное число очков

То есть конечным количеством очков будет количество выпавших на костях очков минус удвоенная ошибка в догадке.

Пользователь выигрывает, если в результате выходит количество очков больше нуля. В конце нужно отобразить формулу расчета очков, конечное количество очков с вычетом удвоенной ошибки в догадке и вынести вердикт - выиграл пользователь или проиграл.

Ответы

Автор ответа: alexandrovskyyy
0

Ответ:

using System;

class Program

{

   static void Main(string[] args)

   {

       Console.WriteLine("Добро пожаловать в игру 'Брось кости'!");

       Console.WriteLine("Загадайте число от 2 до 12:");

       

       // Получаем число, которое загадал пользователь

       int загаданное_число = ПолучитьЦелоеЧисло(2, 12);

       

       // Бросаем кости

       Random случай = new Random();

       int кость1 = случай.Next(1, 7);

       int кость2 = случай.Next(1, 7);

       

       // Выводим результат броска костей

       ВывестиКости(кость1, кость2);

       

       // Рассчитываем количество очков

       int выпавшие_очки = кость1 + кость2;

       int удвоенная_ошибка = Math.Abs(выпавшие_очки - загаданное_число) * 2;

       int конечные_очки = выпавшие_очки - удвоенная_ошибка;

       

       // Выводим формулу и результат

       Console.WriteLine($"Формула: {выпавшие_очки} - Math.Abs({выпавшие_очки} - {загаданное_число})*2");

       Console.WriteLine($"Конечное количество очков: {конечные_очки}");

       

       // Проверяем, выиграл пользователь или проиграл

       if (конечные_очки > 0)

       {

           Console.WriteLine("Вы выиграли!");

       }

       else

       {

           Console.WriteLine("Вы проиграли.");

       }

   }

   // Метод для получения целого числа в заданном диапазоне

   static int ПолучитьЦелоеЧисло(int мин, int макс)

   {

       int число;

       while (true)

       {

           if (int.TryParse(Console.ReadLine(), out число) && число >= мин && число <= макс)

           {

               return число;

           }

           else

           {

               Console.WriteLine($"Пожалуйста, введите целое число от {мин} до {макс}:");

           }

       }

   }

   // Метод для вывода символов костей

   static void ВывестиКости(int кость1, int кость2)

   {

       Console.WriteLine("Бросок костей:");

       Console.WriteLine($"Кость 1: {ВернутьСимволКости(кость1)}");

       Console.WriteLine($"Кость 2: {ВернутьСимволКости(кость2)}");

   }

   // Метод для получения символа, представляющего кость

   static string ВернутьСимволКости(int значение)

   {

       switch (значение)

       {

           case 1: return "⚀";

           case 2: return "⚁";

           case 3: return "⚂";

           case 4: return "⚃";

           case 5: return "⚄";

           case 6: return "⚅";

           default: return "?";

       }

   }

}

Объяснение:

Похожие вопросы
Предмет: Литература, автор: zshumnegra