Составное присваивание
Часть раздела Основы путешествия по Swift на Coddy — урок 18 из 86.
Когда вам нужно обновить переменную на основе её текущего значения, Swift предоставляет составные операторы присваивания в качестве сокращения. Вместо того чтобы писать имя переменной дважды, вы можете объединить арифметическую операцию с присваиванием в один шаг.
var score = 10
score = score + 5 // Длинный способ
score += 5 // Сокращенный способОбе строки делают одно и то же — прибавляют 5 к score. Оператор += читается как «сложить и присвоить».
Swift предоставляет составные операторы присваивания для всех основных арифметических операций:
var number = 20
number += 5 // теперь number равно 25
number -= 3 // теперь number равно 22
number *= 2 // теперь number равно 44
number /= 4 // теперь number равно 11
number %= 3 // теперь number равно 2Эти операторы особенно полезны, когда вы отслеживаете значения, которые меняются со временем, например, при ведении текущей суммы или подсчете вхождений. Они делают ваш код короче и легче для чтения.
Задание
ЛегкоВам предоставлена следующая переменная:
var balance = 100Выполните следующие операции над balance, используя комбинированные операторы присваивания, именно в таком порядке:
- Прибавьте
50к balance - Вычтите
30из balance - Умножьте balance на
2 - Разделите balance на
4 - Найдите остаток от деления balance на
7
После всех операций выведите окончательное значение balance.
Шпаргалка
Swift предоставляет составные операторы присваивания для обновления переменной на основе её текущего значения за один шаг:
var score = 10
score += 5 // Сложение с присваиванием (теперь score равен 15)Доступные составные операторы присваивания:
var number = 20
number += 5 // Сложение: теперь number равен 25
number -= 3 // Вычитание: теперь number равен 22
number *= 2 // Умножение: теперь number равен 44
number /= 4 // Деление: теперь number равен 11
number %= 3 // Остаток от деления: теперь number равен 2Попробуйте сами
var balance = 100
// TODO: Напишите свой код ниже
// Используйте операторы комбинированного присваивания, чтобы:
// 1. Добавить 50 к balance
// 2. Вычесть 30 из balance
// 3. Умножить balance на 2
// 4. Разделить balance на 4
// 5. Получить остаток от деления balance на 7
// Вывести конечное значение balance
print(balance)В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
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Повторение: ФакториалДиапазоны в циклахВложенные циклыПовторение: Динамический ввод