Повторение или продолжение работы программы (Цикл или нет)? - 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
Листинг программы
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.909 из 5
Похожие ответы