Pyramide d'astérisques plate
Fait partie de la section Fondamentaux du Journey Swift de Coddy — leçon 84 sur 86.
Défi
FacileÉcrivez une fonction flatPyramid qui prend rows et renvoie une chaîne représentant une pyramide d'astérisques plate.
La pyramide croît de 1 astérisque jusqu'au nombre de lignes spécifié, puis redescend jusqu'à 1. Chaque ligne doit être sur sa propre ligne, séparée par des caractères de nouvelle ligne (\n).
Logique :
- Construisez la partie ascendante : des lignes avec 1, 2, 3, ... jusqu'à
rowsastérisques - Construisez la partie descendante : des lignes avec
rows - 1,rows - 2, ... jusqu'à 1 astérisque - Joignez toutes les lignes avec des caractères de nouvelle ligne
Exemple : Pour rows = 3, la sortie devrait être :
*
**
***
**
*Ceci est renvoyé sous forme de chaîne : "*\n**\n***\n**\n*"
Paramètres :
rows(Int) : La largeur maximale de la pyramide (la ligne du milieu)
Retourne : Une chaîne contenant le motif complet de la pyramide avec les lignes séparées par \n
Essayez vous-même
func flatPyramid(rows: Int) -> String {
// Écrivez le code ici
}
Toutes les leçons de Fondamentaux
4Opérateurs - Partie 1
Opérateurs arithmétiquesOpérateur ModuloAffectation composéeRécapitulatif - Mathématiques simplesOpérateurs de comparaison7Entrées/Sorties de base
Fonction PrintInterpolation de chaînesSaisie ReadLineConversion de typesRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux10Fonctions
Déclarer une fonctionParamètres et argumentsValeurs de retourÉtiquettes d'argumentRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut13Itération sur les séquences
Itérer sur les élémentsLa méthode d'énumérationItérer sur les chaînes P1Itérer sur les chaînes P22Variables
Let vs VarAnnotations de typeNombresStringsBooléensConventions de nommageRécapitulatif - Initialiser des variables5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de facture
Message de bienvenueSaisie des données11FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz3Les Optionnels
Comprendre les optionnelsDéballage avec If LetL'instruction Guard LetOpérateur de fusion nilRécapitulatif - Déballage sécurisé6Prise de décision
L'instruction IfIf - ElseRécapitulatif - Calculatrice simpleL'instruction SwitchSwitch avec des intervalles9Boucles
Boucle For-InBoucle WhileBoucle Repeat-WhileBreakContinueRécapitulatif - FactorielleIntervalles dans les bouclesBoucles imbriquéesRécapitulatif - Entrée dynamique