Ввод через ReadLine
Часть раздела Основы путешествия по Swift на Coddy. Урок 33 из 86.
До сих пор ваши программы использовали жестко заданные значения. Чтобы сделать программы интерактивными, вам нужно принимать ввод от пользователя. В Swift функция readLine() считывает строку текста из стандартного ввода.
let input = readLine()
print(input)Здесь есть важная деталь: readLine() возвращает опциональную строку (String?), а не обычную строку. Это связано с тем, что ввод может быть пустым или недоступным. Вам потребуется безопасно извлечь её перед использованием значения:
if let name = readLine() {
print("Hello, \(name)!")
}Использование if let гарантирует, что вы будете работать с входными данными только тогда, когда они действительно содержат значение. Этот паттерн чтения входных данных и их безопасного извлечения — то, что вы будете часто использовать при создании интерактивных программ.
Задание
ЛегкоНапишите функцию greetUser, которая принимает name и возвращает персонализированное приветственное сообщение.
Функция имитирует действия после безопасного извлечения (unwrapping) ввода из readLine(). На основе имени создайте и верните строку приветствия.
Параметры:
name(String): Имя пользователя
Возвращает: Приветствие в формате: Hello, [name]!
Попробуйте сами
func greetUser(name: String) -> String {
// Напишите код здесь
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
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Повторение: ФакториалДиапазоны в циклахВложенные циклыПовторение: Динамический вводПотренируйтесь самостоятельно: Песочница Swift