Member 13445937 Ответов: 2

Идентификатор пользователя и пароль


static void Main(string[] args)
{
string username = "coffee";
            string password = "tea";

            Console.WriteLine("Enter your name : ");
            username = Console.ReadLine();

            Console.WriteLine("Enter your password : ");
            password = Console.ReadLine();

            for (int i = 0; i <= 2; i++)
            {
                if (username == "coffee" && password == "tea")
                {
                    Console.WriteLine("\n");
                    Console.WriteLine("Welcome mr coffee");
                    Console.ReadLine();
                    break;
                }

                else
                {
                    Console.WriteLine("\n");
                    Console.WriteLine("try again");

                    Console.WriteLine("Enter your name : ");
                    username = Console.ReadLine();

                    Console.WriteLine("Enter your password : ");
                    password = Console.ReadLine();
                    Console.WriteLine("\n");
                }
            }
            Console.WriteLine("Invalid data try again later");
            Console.ReadLine();
}


Что я уже пробовал:

что не так в этом коде?
ответ "добро пожаловать, мистер кофе" печатается два раза.

2 Ответов

Рейтинг:
1

Wendelius

Учитывая, что код, который вы опубликовали, является тем, который вы используете, насколько я вижу, он печатается только один раз, когда пароль правильный...

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

Другое дело, что вы повторяете вопрос в своем коде в двух местах. Почему бы не поместить его только в начале цикла и не проверить данные после вопроса.


Рейтинг:
1

an0ther1

Вы сказали напечатать его дважды;

for (int i = 0; i <= 2; i++)


Это говорит:,
а) создайте переменную с именем я и установите это значение равным ноль.
б) выполнить цикл и инкремент я около 1
в) сделайте это, пока я меньше 2

Следовательно, он завершает цикл дважды, один раз для i = 0 и снова для i = 1

с уважением