Как сделать повторение всей программы по запросу (C#)? Требуется спросить у пользователя хочет ли он повторить написанный им же раннее тест и в случае утвердительного ответа начать тест сначала, в противном случае закончить работу.
Вроде как нужно обернуть весь код в do while, но делаю что-то не так.
вот мой нерабочий вариант:
string answer;
string yes = "yes";
do
{
"Некий код"
Console.WriteLine("Желаете повторить тест?(Yes/No) ");
answer = Convert.ToString(Console.ReadLine());
} while (answer == yes) ;

21 Авг 2019 в 06:09
148 +1
1
Ответы
1

Да, вы почти правильно подошли к решению. Проблема в том, что вы сравниваете две строки как объекты, вместо того чтобы сравнивать их значения. Вам нужно использовать метод Equals() для сравнения строк. Ниже приведен исправленный вариант кода:

string answer;
string yes = "yes";
do
{
// Ваш код теста
Console.WriteLine("Желаете повторить тест? (Yes/No)");
answer = Console.ReadLine().ToLower(); // Приводим ввод к нижнему регистру для удобства сравнения
} while (answer.Equals(yes)); // Проверяем, равна ли строка "yes"

Теперь программа будет продолжать повторяться, пока пользователь не введет "no" или что-то отличное от "yes".

20 Апр 2024 в 13:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир