Плоская пирамида из звездочек
Часть раздела Основы путешествия по Swift на Coddy — урок 84 из 86.
Задание
ЛегкоНапишите функцию flatPyramid, которая принимает rows и возвращает строку, представляющую плоскую пирамиду из звездочек.
Пирамида растет от 1 звездочки до указанного количества строк, а затем уменьшается обратно до 1. Каждая строка должна быть на отдельной строке, разделенной символами новой строки (\n).
Логика:
- Постройте восходящую часть: строки с 1, 2, 3, ... до
rowsзвездочек - Постройте нисходящую часть: строки с
rows - 1,rows - 2, ... до 1 звездочки - Объедините все строки символами новой строки
Пример: Для rows = 3 результат должен быть:
*
**
***
**
*Это возвращается в виде строки: "*\n**\n***\n**\n*"
Параметры:
rows(Int): Максимальная ширина пирамиды (средняя строка)
Возвращает: Строку, содержащую полный шаблон пирамиды со строками, разделенными \n
Попробуйте сами
func flatPyramid(rows: Int) -> 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Повторение: ФакториалДиапазоны в циклахВложенные циклыПовторение: Динамический ввод