Хочу создать игру в консоли на С# - C#
Формулировка задачи:
[/CSHARP]Игра камень ножницы бумага.Суть игры Компилятор рандомно компилирует числа и со постовляет с твоими.К примеру Камень - 0;Ножницы-1;Бумага-2.При вода твоего числа он наугад ставит свое.
Решение задачи: «Хочу создать игру в консоли на С#»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace RPC { class Program { public enum SCPType { Stone = 1, Scissors = 2, Paper = 3 } // Перечисляемый тип: камень, ножницы, бумага /// <summary> /// Получение текстового наименования хода по его значению /// </summary> /// <param name="scpType">ход</param> /// <returns>текстовое наименование хода</returns> private static string GetTypeName(SCPType scpType) { string res = String.Empty; switch (scpType) { case SCPType.Stone: { res = "Камень"; break; } case SCPType.Scissors: { res = "Ножницы"; break; } case SCPType.Paper: { res = "Бумага"; break; } } return res; } /// <summary> /// Сгенерировать ход компьютера /// </summary> /// <returns>возвращает выбранный компьютером ход</returns> private static SCPType GenerateCPUStep() { Random r = new Random(); return (SCPType)(r.Next(1, 4)); } /// <summary> /// Проверка на победу пользователя над компьютером /// </summary> /// <param name="user">ход пользователя</param> /// <param name="cpu">ход компьютера</param> /// <returns>возвращает признак победы пользователя над компьютером</returns> private static bool Victory(SCPType user, SCPType cpu) { bool res = false; res = ( (user == SCPType.Scissors && cpu == SCPType.Paper) || (user == SCPType.Stone && cpu == SCPType.Scissors) || (user == SCPType.Paper && cpu == SCPType.Stone) ); return res; } static void Main(string[] args) { SCPType cpu = GenerateCPUStep(); // компьютер выбирает ход Console.WriteLine(String.Format("Выберите своё значение: {0} Камень: 1 {0} Ножницы: 2 {0} Бумага: 3 {0} И нажмите Enter", Environment.NewLine)); int intUser = 0; // ход юзера while(intUser < 1) { string strUserValue = Console.ReadLine(); int.TryParse(strUserValue, out intUser); if (intUser < 0 || !(intUser > 0 && intUser < 4)) Console.WriteLine("Необходимо ввести числовое значение от 1 до 3"); } SCPType user = (SCPType)intUser; if (cpu == user) Console.WriteLine(String.Format("Ничья. Вы вместе с компьютером выбрали {0}", GetTypeName(cpu))); else if (Victory(user, cpu)) Console.WriteLine(String.Format("Вы победили. Вы выбрали {0}, а компьютер {1}", GetTypeName(user), GetTypeName(cpu))); else Console.WriteLine(String.Format("Вы проиграли. Вы выбрали {0}, а компьютер {1}", GetTypeName(user), GetTypeName(cpu))); Console.WriteLine("Нажмите ввод, чтобы выйти"); Console.ReadLine(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д