.NET 4.x Возврат к определенной точке кода - C#

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

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

Как можно сделать возврат к определенным строчка кода(думаю по коду понятно будет куда) (ЦИКЛЫ НЕ ПРЕДЛАГАТЬ!!!)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication11
{
    class Program
    {
        static void Main(string[] args)
        {
            int b;
            int[] a = new int[5];
            for (int i = 1; i <= 5; i++)
            {
                a[i] = i;
            }
            Console.WriteLine("Куда пойти");   // сюда надо вернутся
            Console.WriteLine(a[1] +". Домой");
            Console.WriteLine(a[2] + ". На работу");
            Console.WriteLine(a[3] + ". В магазин");
            Console.WriteLine(a[4] + ". В парк");
            Console.WriteLine(a[5] + ". На реку");
              Console.WriteLine("Введите цифру:");
              b = Convert.ToInt32(Console.ReadLine());
              if (b == 1)
              {
                  Console.WriteLine("Вы пришли домой");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы вернутся");
                  b = Convert.ToInt32(Console.ReadLine());
                  if (b == 0)
                  {
                           //отсюда
                  }
                  else
                  {
                      Console.WriteLine("Вы дома");
                      Console.WriteLine();
                      Console.WriteLine("Нажмите 0 чтобы вернутся");//отсюда
                  }
 
              }
            else if(b==2)
              {
                  Console.WriteLine("Вы пришли на работу");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы сбежать с работы");
                  b = Convert.ToInt32(Console.ReadLine());
                  if (b == 0)//отсюда
                  {
 
                  }
                  else
                  {
                      Console.WriteLine("Вы работаете");
                      Console.WriteLine();
                      Console.WriteLine("Нажмите 0 чтобы сбежать с работы");//отсюда
                  }
            
            }
            else if(b==3)
              {
                  Console.WriteLine("Вы пришли в Магазин");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы уйти, потому что у вас денег все равно нет. А чтобы были надо РАБОТАТЬ!!!");
                  b = Convert.ToInt32(Console.ReadLine());
                  if (b == 0)
                  {
//отсюда
                  }
                  else
                  {
                      Console.WriteLine("Вы в магазине. Без денег ");
                      Console.WriteLine();
                      Console.WriteLine("Нажмите 0 чтобы уйти");//отсюда
                  }
            }
            else if(b==4)//отсюда
              {
                  Console.WriteLine("Вы пошли в парк");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы перестать наслаждаться свежим воздухом");
                  b = Convert.ToInt32(Console.ReadLine());
                  if (b == 0)
                  {
 
                  }
                  else
                  {
                      Console.WriteLine("Вы гуляете в парке");
                      Console.WriteLine();
                      Console.WriteLine("Нажмите 0 чтобы перестать наслаждаться свежим воздухом");
                  }
            }
            else if(b==5)//отсюда
              {
                  Console.WriteLine("Вы пришли на реку");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы вернутся");
                  b = Convert.ToInt32(Console.ReadLine());
                  if (b == 0)//отсюда
                  {
 
                  }
                  else
                  {
                      Console.WriteLine("Вы на реке");
                      Console.WriteLine();
                      Console.WriteLine("Нажмите 0 чтобы вернутся");
                  }
            }
              else 
              {
                Console.WriteLine("Неправильный ввод");
                }
        }
    }
}
Вопрос потерял актуальность. Вот к чему я пришел(и да с ЦИКЛАМИ!!)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication11
{
    class Program
    {
        static void Main(string[] args)
        {
            int b;
            int[] a = new int[6];
            for (int i = 1; i < 6; i++)
            {
                a[i] = i;
            }
            restart:
            Console.WriteLine("Куда пойти");
            Console.WriteLine(a[1] +". Домой");
            Console.WriteLine(a[2] + ". На работу");
            Console.WriteLine(a[3] + ". В магазин");
            Console.WriteLine(a[4] + ". В парк");
            Console.WriteLine(a[5] + ". На реку");
              Console.WriteLine("Введите цифру:");
              b = Convert.ToInt32(Console.ReadLine());
              if (b == 1)
              {
                  Console.WriteLine("Вы пришли домой");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы вернутся");
                  while (b != 0)
                  {
                      b = Convert.ToInt32(Console.ReadLine());
                      if (b == 0)
                      {
                          
                          goto restart;
 
                      }
                      else
                      {
                          Console.WriteLine("Вы дома");
                          Console.WriteLine();
                          Console.WriteLine("Нажмите 0 чтобы вернутся");
                      }
                  }
 
              }
                  
            else if(b==2)
              {
                  Console.WriteLine("Вы пришли на работу");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы сбежать с работы");
                  while (b != 0)
                  {
                b = Convert.ToInt32(Console.ReadLine());
                 
                      if (b == 0)
                      {
                          goto restart;
                      }
                      else
                      {
                          Console.WriteLine("Вы работаете");
                          Console.WriteLine();
                          Console.WriteLine("Нажмите 0 чтобы сбежать с работы");
                      }
                  }
            
            }
            else if(b==3)
              {
                  Console.WriteLine("Вы пришли в Магазин");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы уйти, потому что у вас денег все равно нет. А чтобы были надо РАБОТАТЬ!!!");
                  while (b != 0)
                  {
                      b = Convert.ToInt32(Console.ReadLine());
                  
                      if (b == 0)
                      {
                          goto restart;
                      }
                      else
                      {
                          Console.WriteLine("Вы в магазине. Без денег ");
                          Console.WriteLine();
                          Console.WriteLine("Нажмите 0 чтобы уйти");
                      }
                  }
            }
            else if(b==4)
              {
                  Console.WriteLine("Вы пошли в парк");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы перестать наслаждаться свежим воздухом");
                  while (b != 0)
                  {
                      b = Convert.ToInt32(Console.ReadLine());
                  
                      if (b == 0)
                      {
                          goto restart;
                      }
                      else
                      {
                          Console.WriteLine("Вы гуляете в парке");
                          Console.WriteLine();
                          Console.WriteLine("Нажмите 0 чтобы перестать наслаждаться свежим воздухом");
 
                      }
                  }
            }
            else if(b==5)
              {
                  Console.WriteLine("Вы пришли на реку");
                  Console.WriteLine();
                  Console.WriteLine("Нажмите 0 чтобы вернутся");
                  while (b != 0)
                  {
                      b = Convert.ToInt32(Console.ReadLine());
                  
                      if (b == 0)
                      {
                          goto restart;
                      }
                      else
                      {
                          Console.WriteLine("Вы на реке");
                          Console.WriteLine();
                          Console.WriteLine("Нажмите 0 чтобы вернутся");
                      }
                  }
            }
              else 
              {
                Console.WriteLine("Неправильный ввод");
                goto restart;
                }

        }
    }
}

Решение задачи: «.NET 4.x Возврат к определенной точке кода»

textual
Листинг программы
class Program
{
    static void Main(string[] args)
    {
        WhereToGo();
    }
 
    public static void Go(int command)
    {
        switch (command)
        {
            case 1:
                Console.WriteLine("Вы пришли домой");
                break;
 
            case 2:
                Console.WriteLine("Вы пришли на работу");
                break;
 
            case 3:
                Console.WriteLine("Вы пришли в магазин");
                break;
 
            case 4:
                Console.WriteLine("Вы пришли в парк");
                break;
 
            case 5:
                Console.WriteLine("Вы пришли на реку");
                break;
 
            default:
                Console.WriteLine("Неизвестная команда");
                break;
        }
 
        WhereToGo();
    }
 
    public static void WhereToGo()
    {
        Console.Write(
            "\nКуда пойти\n" +
            "1. Домой\n" +
            "2. На работу\n" +
            "3. В магазин\n" +
            "4. В парк\n" +
            "5. На реку\n\n" +
            "Введите число: ");
 
        int command = Convert.ToInt32(Console.ReadLine());
        Go(command);
    }
}

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


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

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

10   голосов , оценка 4.1 из 5
Похожие ответы