Теория циклического кодирования, вход в систему и регистрация sysem - PullRequest
0 голосов
/ 26 сентября 2019

Я кодировал систему, основанную на теории, что циклы while могут работать в любом месте системы.Так что один раз цикл был пройден, он может работать.Вот простая версия моего кода:

using System;

namespace test___login
{
    class Program
    {
        static void Main(string[] args)
        {
            string location = "homepage";
            while (location.Equals("Homepage", StringComparison.InvariantCultureIgnoreCase))

            {
                Console.WriteLine("homepage");
                Console.WriteLine("WHere to now: ");
                location = Console.ReadLine();
            }
            while (location.Equals("login", StringComparison.InvariantCultureIgnoreCase))
            {
                Console.WriteLine("login");
                Console.WriteLine("Where to now: ");
                location = Console.ReadLine();
            }
        }
    }
}

Итак, я предположил, что если во втором цикле while переменная изменится с «login» на «homepage», это будет означать, что первый цикл while будет запущен еще раз,Моя теория о том, как код работает неправильно, или я просто не набираю правильную вещь.Я только начал на прошлой неделе, извините за основной вопрос

Ответы [ 2 ]

2 голосов
/ 26 сентября 2019

Он не запустится снова, потому что код уже выполнен за этой строкой, поэтому, если вы не вызовете его снова, следующая вещь в строке будет выполняться, в вашем случае ничего - это называется процедурным программированием.

Почему бы вам не сделать один цикл while и вместо него использовать оператор switch.

bool run = true;
while (run)

{
      Console.WriteLine("WHere to now: ");
      string location = Console.ReadLine();

    switch(location.ToLower()){
        case "homepage":
            Console.WriteLine("HomePage");
            break;
        default:
            run = false;
            break;
    }

}
0 голосов
/ 26 сентября 2019

Не так, как ваш код структурирован в настоящее время.Это выйдет из приложения.Вам нужно окружить все это еще одной петлей while, которая может быть похожа на другие ваши петли.Смотрите ниже:

using System;

namespace test___login {
    class Program
    {
        static void Main(string[] args)
        {
            string location = "homepage";
            while (!location.ToUpper().Equals("EXIT"))
            {
                while (location.Equals("Homepage", StringComparison.InvariantCultureIgnoreCase))

                {
                    Console.WriteLine("homepage");
                    Console.WriteLine("WHere to now: ");
                    location = Console.ReadLine();
                }
                while (location.Equals("login", StringComparison.InvariantCultureIgnoreCase))
                {
                    Console.WriteLine("login");
                    Console.WriteLine("Where to now: ");
                    location = Console.ReadLine();
                }
            }
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...