Консольная игра "ядерная угроза" для оценки - C#

Узнай цену своей работы

Формулировка задачи:

Выкладываю на общий суд, кансольную игру ядерная угроза! Но игра еще сыровата, Протестируйте код, и скажите как его сделать проще, грамотней, и мобильней, и в каких местах я сделал ошибки, При критике сделайте скидку на то что, я в программировании человек новый, и еще учусь!
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace Ядерная_угроза_занова
{
    class Program
    {
        static void Main(string[] args)
        {
            int russhpitog = 100;
            int usahpitog = 100;

            char r = '1';
            char u = '1';
 
            //НАЗВАНИЕ ИГРЫ
            Console.WriteLine("Игра ядерная угроза");
            Console.WriteLine();
            Console.WriteLine("Хотите обьявить ядерную войну USA (y,n): ");

            for (; ; )
            {
              
            m1:
                //Ссылка ДЛЯ ПОВТОРНОГО ЗАПУСКА КОДА
                
                try
                {
                    //ВВОДИМ С КЛАВИАТУРЫ СИВОИ И САПИСЫВАЕМ ЕГО В 'S'
                    
                    r = char.Parse(Console.ReadLine());
                    
                }
 
                 //ТУТ МЫ ГОВОРИМ ЕСЛИ МЫ ВВЕЛИ НИ Y ИЛИ НИ N ТО МЫ ПЕРЕХОДИМ ПО ССЫЛКЕ m1
                catch (FormatException) { Console.WriteLine("Введены не верные параметры!"); goto m1; }
                if (r != 'y' && r != 'n') { Console.WriteLine("Введены не верные параметры!"); goto m1; }
                //УСЛОВИЕ ЕСЛИ ВЫ ОТКАЗАЛИСЬ ИГРАТЬ
                if (r == 'n')
                {
                    for (;;)
                    {
 
                        Console.WriteLine("Война закончилась так и неночавшись, фу слабак =)");
                       
                    }
                }

                           if (r == 'y')
           
                           {
 
                               //Генератоор чисел
                               Random rnd = new Random();
                               int rndat = rnd.Next(1, 3);
 
                               for (int i = 0; i < 4; i++)
                               {
                                   Console.WriteLine();
                               }
 
                Console.WriteLine(" USA Выпустела свою ракету");
                Console.WriteLine();
 
                //ПЕРВОЕ УСЛОВИЕ: ТУТ СКАЗАНО ЕСЛИ РАНДОМ = 1 И ВЫ ВВЕЛИ Y
                if (rndat == 1 && r == 'y')
                {
      
                    Console.WriteLine(" но ракета не дошла до цели: потери 0% России");
                    
                    //впринцепи russ должен ссылатся на itog но я незнаю как это зделать
                    Console.WriteLine("Осталось     " + russhpitog + "% От России ");
 
                    Console.WriteLine();
                    Console.WriteLine();
                    Console.Write("Хотите атаковать в ответ (y,n): ");
                }
               
                    //ВТОРОЕ УСЛОВИЕ:
                else if (rndat == 2 && r == 'y')
                {
 
                    Console.WriteLine("ракета попала в цель: потери 25 % России");

                    // ЗНАЧЕНИЯ В ТОРЫЕ МЫ БУДИМ ПЕРЕВОДИТЬ STRING

                    russhpitog -= 25;
 
                    //ТО ЗАПУСКАИТСЯ  STRING ATAKA2

                    //СКОЛЬКА У РОСИИ УРОНА
                    Console.WriteLine("Осталось  " + russhpitog + "% От России");
                    Console.WriteLine();

                    Console.Write("Хотите атаковать в ответ (y,n): ");
                    for (int i = 0; i < 4; i++)
                    {
                        Console.WriteLine();
                    }

                }                          
                           }

                //Вторая часть кода

                   m2:
                           //Ссылка ДЛЯ ПОВТОРНОГО ЗАПУСКА КОДА
 
                           try
                           {
                               //ВВОДИМ С КЛАВИАТУРЫ СИВОИ И САПИСЫВАЕМ ЕГО В 'S'
 
                               u = char.Parse(Console.ReadLine());
 
                           }
 
                            //ТУТ МЫ ГОВОРИМ ЕСЛИ МЫ ВВЕЛИ НИ Y ИЛИ НИ N ТО МЫ ПЕРЕХОДИМ ПО ССЫЛКЕ m1
                           catch (FormatException) { Console.WriteLine("Введены не верные параметры!"); goto m2; }
                           if (u != 'y' && u != 'n') { Console.WriteLine("Введены не верные параметры!"); goto m2; }
                           //УСЛОВИЕ ЕСЛИ ВЫ ОТКАЗАЛИСЬ ИГРАТЬ
                           if (u == 'n')
                           {
                               for (; ; )
                               {
 
                                   Console.WriteLine("Война закончилась так и неночавшись, фу слабак =)");
 
                               }
                           }

                           if (u == 'y')
                           {
 
                               //Генератоор чисел
                               Random rnd = new Random();
                               int rndat = rnd.Next(1, 3);
 
                               for (int i = 0; i < 4; i++)
                               {
                                   Console.WriteLine();
                               }
 
                               Console.WriteLine(" Россия выпустила свою ракету в ответ");
                               Console.WriteLine();
 
                               //ПЕРВОЕ УСЛОВИЕ: ТУТ СКАЗАНО ЕСЛИ РАНДОМ = 1 И ВЫ ВВЕЛИ Y
                               if (rndat == 1 && u == 'y')
                               {
 
                                   Console.WriteLine("но ракета не дошла до цели: потери 0% USA");
 
                                   //впринцепи russ должен ссылатся на itog но я незнаю как это зделать
                                   Console.WriteLine("Осталось     " + usahpitog + "% От USA ");
 
                                   Console.WriteLine();
                                   Console.WriteLine();
                                   Console.Write("Хотите атаковать в ответ (y,n): ");
                               }
 
                                   //ВТОРОЕ УСЛОВИЕ:
                               else if (rndat == 2 && u == 'y')
                               {
 
                                   Console.WriteLine("ракета попала в цель: потери 25 % USA");

                                   // ЗНАЧЕНИЯ В КОТОРЫЕ МЫ БУДИМ ПЕРЕВОДИТЬ STRING

                                   usahpitog -= 25;
 
                                   //ТО ЗАПУСКАИТСЯ  STRING ATAKA2
                                   Console.WriteLine();
                                   Console.WriteLine();
 
                                   //СКОЛЬКА У РОСИИ УРОНА
                                   Console.WriteLine("Осталось  " + usahpitog + "% От USA");
                                   Console.WriteLine();

                                   Console.Write("Хотите атаковать в ответ (y,n): ");
                                   for (int i = 0; i < 4; i++)
                                   {
                                       Console.WriteLine();
                                   }

                               }
                           }
 
                           bool a = true;
                           a = (russhpitog == 0);
                           bool b = true;
                           b = (usahpitog == 0);

                           if (a)
                           {
                               for (int i = 0; i < 10; i++)
                               {
                                   Console.WriteLine();
                               }
                               Console.WriteLine("                            РОССИЯ ПРОИГРАЛА В ВОЙНЕ");
                               Console.ReadKey();
                               break;
                           }
 
                           if (b)
                           {
                               for (int i = 0; i < 10; i++)
                               {
                                   Console.WriteLine();
                               }
                               Console.WriteLine("                            АМЕРИКА ПРОИГРАЛА В ВОЙНЕ");
                               Console.ReadKey();
                               break;
                           }

            }

            Console.ReadKey();

        }
    }
}

Решение задачи: «Консольная игра "ядерная угроза" для оценки»

textual
Листинг программы
                //УСЛОВИЕ ЕСЛИ ВЫ ОТКАЗАЛИСЬ ИГРАТЬ
                if (r == 'n')
                {
                    for (; ; )//вот он нужно так for (int i=0;i<5 ;i++ ) тогда надпись выведеш 5 раз но зачем?
                    {
                        Console.WriteLine("Война закончилась так и неночавшись, фу слабак =)");
                    }
                }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5