Подсчёт с помощью stride(from:to:by:)
Перемещайтесь с заданным шагом, включая отрицательные значения.
«Подсчёт с помощью stride(from:to:by:)» — бесплатный урок Swift Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 4 уроков всего.
Зачем нужна пошаговая последовательность
Обычные диапазоны изменяются с шагом 1. Чтобы считать с другим шагом, считать в обратном направлении или использовать дробные числа, Swift предоставляет функцию stride.
for n in stride(from: 0, to: 10, by: 2) {
print(n)
}Пошаговый перебор: начало, конец и шаг
stride(from: a, to: b, by: step) создаёт значения, начиная с a, изменяя их на step и останавливаясь перед b. Конечное значение исключается.
for n in stride(from: 0, to: 5, by: 1) {
print(n)
}Пошаговый перебор с включением конца
stride(from: a, through: b, by: step) — это вариант с включённой конечной границей. Он может точно достигнуть b, если шаг приводит к этому значению.
for n in stride(from: 0, through: 10, by: 5) {
print(n)
}Обратный подсчёт
Используйте отрицательный шаг, чтобы считать в обратном направлении. Значение by: может быть отрицательным.
for n in stride(from: 5, through: 1, by: -1) {
print(n)
}Пропуск значений
Больший шаг пропускает значения, что удобно для выполнения каждой N-й итерации.
for n in stride(from: 0, to: 20, by: 5) {
print(n)
}Шаг с дробными числами
В отличие от диапазонов, stride работает с числами с плавающей точкой и позволяет использовать дробный шаг.
for x in stride(from: 0.0, through: 1.0, by: 0.25) {
print(x)
}Исключительная и включительная конечные границы
Различие заключается в конечном значении: to исключает его, а through включает. Выбирайте вариант в зависимости от того, нужно ли включить последнее значение.
print(Array(stride(from: 1, to: 4, by: 1)))
print(Array(stride(from: 1, through: 4, by: 1)))Пошаговый перебор с записью в массив
Можно собрать результат пошагового перебора в массив с помощью Array(...).
let evens = Array(stride(from: 0, through: 10, by: 2))
print(evens)Индексация с шагом
Пошаговый перебор удобен для посещения каждого второго индекса коллекции.
let items = ["a", "b", "c", "d", "e"]
for i in stride(from: 0, to: items.count, by: 2) {
print(items[i])
}Обратный перебор
Чтобы пройти массив от конца к началу, выполняйте пошаговый перебор от последнего индекса до 0.
let nums = [10, 20, 30]
for i in stride(from: nums.count - 1, through: 0, by: -1) {
print(nums[i])
}Суммирование последовательности с шагом
Объедините пошаговый перебор с накоплением, чтобы сложить последовательность значений с заданным шагом.
var total = 0
for n in stride(from: 0, through: 100, by: 10) {
total += n
}
print(total)Быстрая проверка
Проверьте пошаговый перебор.
Итоги: подсчёт с шагом
stride(from:to:by:) не включает конечное значение, а stride(from:through:by:) включает его. Используйте отрицательные шаги для обратного подсчёта и любой числовой шаг, включая дробные числа, чтобы считать с заданным интервалом.
for n in stride(from: 0, through: 6, by: 2) { print(n) }Часто задаваемые вопросы
Урок «Подсчёт с помощью stride(from:to:by:)» бесплатный?
Да — полный текст урока «Подсчёт с помощью stride(from:to:by:)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 4 уроков всего.
Чему я научусь в уроке «Подсчёт с помощью stride(from:to:by:)»?
Перемещайтесь с заданным шагом, включая отрицательные значения. Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Swift Academy?
Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Подсчёт с помощью stride(from:to:by:)»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Swift Academy?
Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Замкнутые и полуоткрытые диапазоны
- Односторонние диапазоны
- Подсчёт с помощью stride(from:to:by:)
- Диапазоны как коллекции