Повторение или продолжение работы программы (Цикл или нет)? - C#
Формулировка задачи:
Ребят, прошу прощения за Заголовок темы. Я абсолютный новичек и даже не знаю, как назвать заголовок. По Ютубу пытаюсь изучать C# и программирование в целом. Прошел условия, циклы и переменные, и вот сразу решил создать первый маленький проект. Код будет под текстом.
Проект заключается в том, что просит ввести возраст и рост, после чего сообщает мне в текстовом виде все мною введенное. У меня начинается проверка if на предмет Возраста и Роста. Т.е. если Возраст превышает 121 год, то программа спрашивает "Вы - мумия?", затем закрывается. Если же Возраст не превышает 121 год, то требуется ввести Рост и начинается проверка if Роста. Если Рост свыше 230, то возникает вопрос "Вы - столб?" и программа закрывается, если менее 231, то программа начинает проверку цифр, что бы по-русски грамотно сделать вывод и, НАКОНЕЦ, выводит результат.
А я хочу сделать так, что, если все таки Возраст или Рост за пределами допустимого значения, то программа выдавала бы повтор на введение корректных данных (Возраста или Роса) и продолжала работу, а не закрывалась.
Я пытался сделать это с помощью цикла while, но что-то у меня все криво получалось и не получилось реализовать.
Прошу Вас, помогите, подскажите))) Спасибо!))
Вот он рабочий код:
static void Main(string[] args) { //Объявляем переменные int age; //Возраст в цифрах int height; //Рост в цифрах string let; //слова "Год, Года, Лет" string rost; //слова "Сантиметр, Сантиметра, Сантиметров" string mumi = "Вы - мумия?"; //Просто ввел переменную, что бы не вводить слова в коде string stolb = "Вы - столб?"; //Просто ввел переменную, что бы не вводить слова в коде //Первый вопрос для введния цифры в переменную age Console.Write("Введите свой возраст и нажмите Enter: "); age = Convert.ToInt32(Console.ReadLine()); //Ввод цифры в переменную age if (age > 121) //Проверка. Если возраст превышает 121 год, значит человек уже мумия { Console.WriteLine(mumi); } else //если человеку менее 122 лет, то идет запрос на введение цифры в переменную height { //Второй вопрос для введения цифры в переменную height Console.Write("Введите свой рост и нажмите Enter:"); height = Convert.ToInt32(Console.ReadLine()); if (height > 230) //Проверка. Если рос превышает 230 год, значит человек уже столб { Console.WriteLine(stolb); } else //если человек ниже 231 сантиметра, то, перед выводом результата, идет проверка, какие именно цифры ввел человек, что бы вывод был по-русски грамотным { //Проверка возраста. Если возраст заканчивается на 1, то выводим слово "Год", если на 2/3/4, то выводим солово "Года", в остальных случаях выводим слово "Лет" switch (age) { case 1: case 21: case 31: case 41: case 51: case 61: case 71: case 81: case 91: case 101: case 121: let = "год"; break; case 2: case 3: case 22: case 32: case 42: case 52: case 62: case 72: case 82: case 92: case 102: case 23: case 33: case 43: case 53: case 63: case 73: case 83: case 93: case 103: case 24: case 34: case 44: case 54: case 64: case 74: case 84: case 94: case 104: let = "года"; break; default: let = "лет"; break; } //Проверка роста. Если рост заканчивается на 1, то выводим слово "Сантиметр", если на 2/3/4, то выводим солово "Сантиметра", в остальных случаях выводим слово "Сантиметров" switch (height) { case 1: case 21: case 31: case 41: case 51: case 61: case 71: case 81: case 91: case 101: case 121: case 131: case 141: case 151: case 161: case 171: case 181: case 191: case 201: case 221: rost = "сантиметр"; break; case 2: case 22: case 32: case 42: case 52: case 62: case 72: case 82: case 92: case 102: case 122: case 132: case 142: case 152: case 162: case 172: case 182: case 192: case 202: case 222: case 3: case 23: case 33: case 43: case 53: case 63: case 73: case 83: case 93: case 103: case 123: case 133: case 143: case 153: case 163: case 173: case 183: case 193: case 203: case 223: case 4: case 24: case 34: case 44: case 54: case 64: case 74: case 84: case 94: case 104: case 124: case 134: case 144: case 154: case 164: case 174: case 184: case 194: case 204: case 224: rost = "сантиметра"; break; default: rost = "сантиметров"; break; } //Выводим результат введенных цифр Console.WriteLine("Значицца, вам " + age + " " + let + " , а рост " + height + " " + rost + "!"); } } Console.ReadKey(); }
Решение задачи: «Повторение или продолжение работы программы (Цикл или нет)?»
textual
Листинг программы
}
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д