Повторение или продолжение работы программы (Цикл или нет)? - 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
Листинг программы
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д