static void Task4() { string Welcome = "Вы выбрали задачу проверки логина и пароля\n"; Welcome = Welcome + "Это очаровывает!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); const ushort totalNumberOfAttempts = 3; ushort counterOfAttempts = 0; do { counterOfAttempts++; string userLogin = ClassLibraryLesson2.MakeQuestion("логин"); string userPassword = ClassLibraryLesson2.MakeQuestion("пароль"); if (TryLogin(userLogin, userPassword)) { ClassLibraryLesson2.Print("Доступ предоставлен!"); break; } else { ClassLibraryLesson2.Print("Логин или пароль неверен!"); ClassLibraryLesson2.Print($"Осталось {totalNumberOfAttempts - counterOfAttempts} попытки."); } }while (counterOfAttempts < totalNumberOfAttempts); ClassLibraryLesson2.Pause(); }
static double MinNumber(string numberAsString, out int counter) { counter = 0; string[] userAnwer = ClassLibraryLesson2.SplitString(numberAsString); double value = Double.MaxValue; foreach (string element in userAnwer) { if (Double.TryParse(element, out double currentNumber)) { counter++; // это было число if (value > currentNumber) { value = currentNumber; } } else { ClassLibraryLesson2.Print($"Введенное значение {element} не является числом!"); } } return(value); }
static void RecursivePrint(int begin, int end) { if (end >= begin) { ClassLibraryLesson2.Print(end.ToString()); end--; RecursivePrint(begin, end); } }
static void Task7() { string Welcome = "Вы выбрали задачу рекурсивного вывода ряда чисел\n"; Welcome = Welcome + "Это забавно!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); int beginNumber = Int32.Parse(ClassLibraryLesson2.MakeQuestion("начальное число ряда")); int endNumber = Int32.Parse(ClassLibraryLesson2.MakeQuestion("конечное число ряда")); ClassLibraryLesson2.Print("Вывод ряда:"); RecursivePrint(beginNumber, endNumber); ClassLibraryLesson2.Pause(); }
static void Task1() { string Welcome = "Вы выбрали задачу поиска минимального ряда чисел\n"; Welcome = Welcome + "Это так увлекательно!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); string userAnwerAsString = ClassLibraryLesson2.MakeQuestion("ряд чисел разделенные пробелом"); double minNumber = MinNumber(userAnwerAsString, out int counter); ClassLibraryLesson2.Print($"Было найдено и обработано {counter} чисел из введенной строки <{userAnwerAsString}>."); ClassLibraryLesson2.Print((minNumber == Double.MaxValue) ? "Минимальное значение определить не удалось :(" : $"Минимальное значение равно: {minNumber}"); ClassLibraryLesson2.Pause(); }
static void Task2() { string Welcome = "Вы выбрали задачу подсчета количества цифр в заданном числе\n"; Welcome = Welcome + "Это крайне интересно!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); string userAnwerAsString = ClassLibraryLesson2.MakeQuestion("целое положительное число"); if (UInt32.TryParse(userAnwerAsString, out uint userNumber)) { ClassLibraryLesson2.Print($"Число цифр в числе: {CountQuantityOfNumeral(userNumber)}"); } else { ClassLibraryLesson2.Print($"Введенное значение {userAnwerAsString} не подходит!"); } ClassLibraryLesson2.Pause(); }
static void Task6() { string Welcome = "Вы выбрали задачу подсчета количества хороших чисел в миллиарде\n"; Welcome = Welcome + "Это внушает!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); int counter = 0; DateTime beginMarkOfTime = DateTime.Now; for (int currentNumber = 1; currentNumber <= 1000000000; currentNumber++) { string currentNumberAsString = currentNumber.ToString(); int summOfNumbers = 0; foreach (char currentChar in currentNumberAsString) { summOfNumbers = summOfNumbers + Int32.Parse(currentChar.ToString()); } if (currentNumber % summOfNumbers == 0) { counter++; } } DateTime finishMarkOfTime = DateTime.Now; TimeSpan deltaMarkOfTime = finishMarkOfTime - beginMarkOfTime; ClassLibraryLesson2.Print($"Количество хороших чисел: {counter}. Затрачено времени: {deltaMarkOfTime.TotalMinutes} минут"); ClassLibraryLesson2.Pause(); }
static void Task3() { string Welcome = "Вы выбрали задачу подсчета суммы нечетных положительных чисел\n"; Welcome = Welcome + "Это завораживает!\n"; Welcome = Welcome + "Давайте начнем.\n"; ClassLibraryLesson2.PrintTaskWelcomeScreen(Welcome); double totalSumm = 0; while (true) { string userAnwerAsString = ClassLibraryLesson2.MakeQuestion("число. Для окончания ряда чисел введите 0"); if (Double.TryParse(userAnwerAsString, out double currentNumber)) { if (currentNumber > 0 && currentNumber % 2 != 0) { totalSumm = totalSumm + currentNumber; } else if (currentNumber == 0) { break; } } else { ClassLibraryLesson2.Print($"Введенное значение {userAnwerAsString} не подходит!"); } } ClassLibraryLesson2.Print($"Сумма положительных нечетных положительных чисел: {totalSumm}"); ClassLibraryLesson2.Pause(); }