Шаг
Часть раздела Логика и управление потоком путешествия по Swift на Coddy. Урок 8 из 56.
Диапазон проходит по одному шагу за раз. Если нужен другой размер шага или нужно считать вниз, используйте stride.
Два варианта: stride(from:to:by:) останавливается перед вторым значением (полуоткрытый диапазон), а stride(from:through:by:) может включать его (замкнутый диапазон):
for n in stride(from: 0, to: 10, by: 2) {
print(n)
}
// 0, 2, 4, 6, 8for n in stride(from: 10, through: 0, by: -2) {
print(n)
}
// 10, 8, 6, 4, 2, 0Аргумент by: должен иметь правильный знак: положительный при подсчёте вверх, отрицательный при подсчёте вниз. При несоответствии цикл выполнится ноль раз.
Задание
ЛегкоПрочитайте три целых числа (три строки): start, end, step. Шаг может быть положительным или отрицательным. Диапазон является включительным с обеих сторон (используйте stride(from:through:by:)).
Выведите:
- Значения в stride, объединённые с помощью
, - Количество полученных значений
Для входных данных 0 / 10 / 3 результатом будет:
0,3,6,9
4Для входных данных 10 / 0 / -2 результатом будет:
10,8,6,4,2,0
6Попробуйте сами
let start = Int(readLine()!)!
let end = Int(readLine()!)!
let step = Int(readLine()!)!
// TODO: stride(from:through:by:), объединить через запятую, затем вывести количество
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Логика и управление потоком
1Строки в деталях
Подсчет и индексыРегистр и удаление пробеловПоиск в строкахРазделение и объединениеЗамена подстрокИтоги — Проверка имени пользователя4Множества
Создание множествОбъединение и пересечениеРазность и симметрическая разностьПодмножество и надмножествоИтоги — Фильтр тегов7Проект — Трекер привычек
Обзор проектаОтметить выполнение10Проект — Движок викторины
Обзор проектаЗадаем вопросы2Диапазоны и шаги
Закрытые и полуоткрытыеШагМетоды диапазоновДиапазоны в SwitchИтоги: Сетка календаряПотренируйтесь самостоятельно: Песочница Swift