Необходимо выполнить и предоставить на проверку следующие задачи. Все задачи можно выполнить и сдать в одном файле .playground.
Тип для Замыкания: на входе два параметра Double, На Выходе Double.
Вы разрабатываете спутник для полета на Европу (спутник Юпитера). В вашей команде два ученых по космодинамике. Вы даете каждому из них задачу расчитать количество топлива для достижения спутником цели.
Данные, которые они получают — это вес спутника и длина полета. Они должны вам предоставить свои алгоритмы расчетов топлива (это ваши Замыкания). А вы по готовности алгоритмов делаете обработку данных и сравниваете результат (это ваша Функция).
- Написать функцию с входящим параметром — Замыкание (тип указан выше). Функция должна выводить в консоль результат выполнения Замыкания.
- Написать два Замыкания (тип указан выше). Внутри должна быть математическая операция (на ваш выбор) над входящими значениями.
- Вызвать функцию для первого Замыкания и потом для второго Замыкания.
- Выполнить задание, не сокращая синтаксис языка.
В вашем конструкторском бюро случилось ЧП и все компьютеры вышли из строя, но последние алгоритмы вы помните. Вы намерены добраться до ближайшего компьютера в соседнем селе и восстановить из своей памяти нужные данные. Ваша задача запомнить максимально краткую форму записи алгоритмов, чтобы все не смешалось в голове.
Представить задание 1 в сокращенном виде (см. пункт лекции "Сокращения для замыканий").
Пока вы добирались до села с компьютером, вам пришла в голову мысль своего алгоритма. Вы решили использовать свою функцию для проверки гипотезы и стали набирать алгоритм прямо в ней (реализация Замыкания вместо параметра).
-
Вызвать функцию из задания 1, определив ей Замыкание самостоятельно (не передавая).
-
Объяснить, куда и почему исчезло ключевое слово ('param' - в примере) для параметра.
func example(param: () -> Void) {
// ...
}
example {
// ...
}
Решение сохраните в формате .playgrond. Готовый файл .playground заархивируйте и загрузите в личном кабинете в формате .zip.
Все задачи обязательны к выполнению для получения зачета, кроме задач со звездочкой. Присылать на проверку можно каждую задачу по отдельности или все задачи вместе. Во время проверки по частям ваша домашняя работа будет со статусом "На доработке".
Любые вопросы по решению задач задавайте в чате Slack (ссылку вы найдете в письме на вашей эл. почте).