Pirâmide de Asteriscos Reta
Parte da seção Fundamentos do Journey de Swift da Coddy — lição 84 de 86.
Desafio
FácilEscreva uma função flatPyramid que recebe rows e retorna uma string representando uma pirâmide de asteriscos deitada.
A pirâmide cresce de 1 asterisco até o número especificado de linhas, depois diminui de volta para 1. Cada linha deve estar em sua própria linha, separada por caracteres de nova linha (\n).
Lógica:
- Construa a parte ascendente: linhas com 1, 2, 3, ... até
rowsasteriscos - Construa a parte descendente: linhas com
rows - 1,rows - 2, ... até 1 asterisco - Junte todas as linhas com caracteres de nova linha
Exemplo: Para rows = 3, a saída deve ser:
*
**
***
**
*Isso é retornado como a string: "*\n**\n***\n**\n*"
Parâmetros:
rows(Int): A largura máxima da pirâmide (a linha central)
Retorna: Uma string contendo o padrão completo da pirâmide com as linhas separadas por \n
Experimente você mesmo
func flatPyramid(rows: Int) -> String {
// Escreva o código aqui
}
Todas as lições de Fundamentos
4Operadores Parte 1
Operadores AritméticosOperador de MóduloAtribuição CompostaRecapitulação - Matemática SimplesOperadores de Comparação7IO Básico
Função PrintInterpolação de StringsEntrada ReadLineConversão de TiposRecapitulação - Até 120Recapitulação - Verdadeiro ou Falso10Funções
Declarar uma FunçãoParâmetros e ArgumentosValores de RetornoRótulos de ArgumentosRecapitulação - Função SigmaRecapitulação - Função de ValidaçãoValores Padrão13Iterando sobre Sequências
Iterando sobre ElementosO Método EnumeratedIterando sobre Strings P1Iterando sobre Strings P22Variáveis
Let vs VarAnotações de TipoNúmerosStringBooleanosConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operador Ternário8Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada11FizzBuzz com um Diferencial
Visão Geral do JogoA Função FizzBuzz3Opcionais
O que são OpcionaisDesembrulhando com If LetGuard LetOperador de Coalescência NulaRecapitulação - Desembrulho Seguro6Tomada de Decisão
Estrutura IfIf - ElseRecapitulação - Calculadora SimplesEstrutura SwitchSwitch com Intervalos9Loops
Loop For-InLoop WhileLoop Repeat-WhileBreakContinueRecapitulação - FatorialIntervalos em LoopsLoop AninhadoRecapitulação - Entrada Dinâmica12Fundamentos de Arrays
Declarando um ArrayAcessando ElementosModificando ArraysMétodos de ArrayRecapitulação - Lista de ProdutosRecapitulação - Array InvertidoTuplas15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa