Как это можно сделать с помощью Swifty?

Циклы For - это базовый набор строительных блоков для программирования. Но есть способы сделать это Swifty; кто они такие?

Сложность: Начинающий | Легко | Нормальный | Испытывающий

Предпосылки:

  • Нет, были бы полезны базовые знания программирования на Swift.
  • Если вы не уверены в четных и нечетных числах, можете прочитать ЭТО

Терминология

цикл: последовательность инструкций, повторяющаяся до тех пор, пока не будет достигнуто условие.

диапазон: элементы между самым высоким и самым низким значениями.

Пример массива

В Swift мы создали массив arr с 4 элементами (a, b, c и d).

и логически это выглядит следующим образом

Цикл по массиву

Возможно, вы захотите прочитать каждый из этих элементов по очереди.

Мы собираемся использовать для этого цикл for, а в Swift мы просто записываем каждый элемент с помощью print:

Теперь, если мы не хотим использовать константу, предоставляемую циклом for, вы можете заменить ее на _.

В этом случае не имеет смысла печатать элемент для каждого (элемента колодца) в массиве. Итак, что мы можем сделать, так это заставить цикл работать произвольное количество раз.

Печать из массива

Мы можем распечатать все элементы из массива, используя цикл for

Что затем можно использовать для печати каждого элемента в term из нашего массива arr:

Или, что еще лучше, мы можем убедиться, что мы находимся в пределах массива, используя arr.count

Печать четных чисел из массива

Вывести четные числа внутри цикла for может быть сложно - примеры находятся здесь, которые также содержат примеры оператора mod% в Swift.

Предложение where полезно для этого в Swift.

Видео на YouTube

Вот руководство YouTube для вышеупомянутого:

Https://youtu.be/pM4Vquc-ffw

Заключение…

Отсюда мы можем перейти к рассмотрению Stride в Swift, который, по сути, является хорошей альтернативой циклу for в Swift (в зависимости от ваших потребностей).

Удачного кодирования!

Ссылка репо:

Https://github.com/stevencurtis/SwiftCoding/tree/master/ForLoop

Контактное лицо в Twitter:

Любые вопросы - направляйте их мне ЗДЕСЬ.