Просмотр всех расходов
Часть раздела Основы путешествия по Swift на Coddy. Урок 80 из 86.
Задание
ЛегкоНа предыдущем уроке вы реализовали функцию "Add expense". Теперь реализуйте функцию "View all expenses" для варианта "2".
Измените код, чтобы обрабатывать вариант "2":
- Когда пользователь вводит
"2", проверьте, пуст ли массивexpenses - Если массив пуст, выведите
No expenses recorded. - Если в массиве есть расходы, выведите
Your expenses:, а затем каждый расход на отдельной строке в формате- $с последующей суммой в том виде, в каком Swift выводит значениеDouble(например,25.50выводится как- $25.5) - Варианты
"3"и"4"должны по-прежнему выводитьComing soon... - Варианты
"1"и"5"должны продолжать работать как прежде
Ожидаемое поведение:
- Если ввести
"2", когда расходов нет, выведитеNo expenses recorded. - Если ввести
"2", когда есть расходы, выведите заголовок, а затем перечислите каждый расход, указав перед ним тире и знак доллара
Пример взаимодействия:
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
2
No expenses recorded.
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
25.50
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
1
Enter expense amount:
10.00
Expense added!
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
2
Your expenses:
- $25.5
- $10.0
1. Add expense
2. View all expenses
3. Show total and average
4. Clear all expenses
5. Exit
5
Goodbye!Попробуйте сами
// Daily Expense Tracker - Menu Display
var expenses: [Double] = []
while true {
// TODO: Write your code below to print the menu options
// Each option should be on its own line with the format: "number. option text"
print("1. Add expense")
print("2. View all expenses")
print("3. Show total and average")
print("4. Clear all expenses")
print("5. Exit")
let choice = readLine()
if choice == "1" {
print("Enter expense amount:")
if let input = readLine(), let amount = Double(input) {
expenses.append(amount)
print("Expense added!")
}
} else if choice == "2" {
print("Coming soon...")
} else if choice == "3" {
print("Coming soon...")
} else if choice == "4" {
print("Coming soon...")
} else if choice == "5" {
print("Goodbye!")
break
} else {
print("Coming soon...")
}
}Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыОператор остатка от деленияСоставное присваиваниеПовторение: простая математикаОператоры сравнения7Основы ввода-вывода
Функция printИнтерполяция строкВвод с ReadLineПреобразование типовПовторение: до 120Повторение: истина или ложь2Переменные
Let и VarАннотации типовЧислаСтрокаЛогический типСоглашения об именованииПовторение — инициализация переменных5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор разделения счёта
Приветственное сообщениеВвод данных14Массивы: продвинутый уровень
Срезы массивов. Часть 1Срезы массивов. Часть 2Операторы последовательностейМетод Contains3Опциональные значения
Что такое опциональные значенияИзвлечение значения с помощью if letGuard letОператор объединения с nilПовторение — безопасное извлечение значения6Принятие решений
Условный оператор ifIf — ElseПовторение: простой калькуляторОператор switchSwitch с диапазонами9Циклы
Цикл for-inЦикл whileЦикл repeat-whileПрерывание циклаПереход к следующей итерацииПовторение — факториалДиапазоны в циклахВложенный циклПовторение — динамический ввод12Основы массивов
Объявление массиваДоступ к элементамИзменение массивовМетоды массивовПовторение — список продуктовПовторение — массив в обратном порядкеКортежи15Ежедневный учёт расходов
Обзор проектаВыход из программыПотренируйтесь самостоятельно: Песочница Swift