Повторение: Динамический ввод
Часть раздела Основы путешествия по Swift на Coddy — урок 50 из 86.
Задание
ЛегкоЧитайте числа из входных данных до тех пор, пока пользователь не введет "end". Вычислите и выведите произведение всех введенных положительных чисел.
Вы получите следующие входные данные:
- Несколько строк ввода, каждая из которых содержит либо число, либо слово
"end" - Ввод завершается, когда введено
"end"
Требования:
- Используйте цикл
whileсreadLine()для непрерывного чтения ввода - Прекратите чтение, когда ввод станет равен
"end" - Для каждого корректного целочисленного ввода проверьте, является ли оно положительным (больше 0)
- Перемножайте только положительные числа
- Выведите конечное произведение
Примечание: Начните с произведения, равного 1 (так как умножение на 1 не меняет результат). Если положительных чисел введено не было, результатом должно быть 1.
Например, если входные данные следующие:
3
-2
4
0
2
endПоложительные числа — это 3, 4 и 2. Произведение равно 3 * 4 * 2 = 24, поэтому на выходе должно быть:
24Попробуйте сами
var product = 1
// TODO: Напишите свой код ниже
// Используйте цикл while с readLine(), чтобы считывать ввод до тех пор, пока не встретится "end"
// Для каждого положительного числа умножьте его на product
print(product)Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеПовторение: Простая математикаОператоры сравнения7Основы ввода-вывода
Функция PrintИнтерполяция строкВвод через ReadLineПреобразование типовПовторение — до 120Повторение — True или False10Функции
Объявление функцииПараметры и аргументыВозвращаемые значенияМетки аргументовПовторение: функция SigmaПовторение: функция валидацииЗначения по умолчанию13Итерирование по последовательностям
Итерирование по элементамМетод enumerateИтерирование по строкам, ч. 1Итерирование по строкам, ч. 22Переменные
Let против VarАннотации типовЧислаСтрокиBooleanСоглашения об именованииИтоги — Инициализация переменных5Операторы. Часть 2
Логические операторы. Часть 1Логические операторы. Часть 2Повторение: простая логикаЛогические операторы. Часть 3Тернарный оператор8Калькулятор разделения счета
Приветственное сообщениеПолучение ввода14Массивы: Продвинутый уровень
Срезы массивов. Часть 1Срезы массивов. Часть 2Операторы последовательностейМетод Contains3Опционалы
Что такое опционалыРазвертывание с помощью if letGuard letОператор объединения с nilИтоги — безопасное развертывание6Принятие решений
Оператор IfКонструкция If - ElseПовторение — Простой калькуляторОператор SwitchSwitch с диапазонами9Циклы
Цикл For-InЦикл WhileЦикл Repeat-WhileBreakContinueПовторение: ФакториалДиапазоны в циклахВложенные циклыПовторение: Динамический ввод