Questão 7: Escreva uma função piramide que receba um número inteiro
imprima na tela uma pirâmide números conforme o exemplo (note que sua função deve imprimir valores na tela, e não retornar):
> piramide 4
1 2 34
123
12
1
> piramide 7
1234567
123456
12345
1 2 3 4
123
12
1
> piramide 4
1 2 34
123
12
1
> piramide 7
1234567
123456
12345
1 2 3 4
123
12
1
Passo 1
O enunciado pede uma função piramide que receba um inteiro n e imprima no terminal uma “pirâmide” de linhas com números de 1 até i, onde i vai de n até 1. Isso envolve o uso de estruturas de repetição aninhadas (loops).
Passo 2
Vamos usar um loop externo que começa em n e vai até 1 (decrementando de 1 em 1). Esse loop controla quantos números serão impressos em cada linha.
Para cada valor i do loop externo, vamos criar uma string vazia e usar um loop interno que vai de 1 até i, concatenando cada número j convertido para string.
Depois de concatenar todos os números de 1 até i, usamos print para exibir a linha no terminal.
Para cada valor i do loop externo, vamos criar uma string vazia e usar um loop interno que vai de 1 até i, concatenando cada número j convertido para string.
Depois de concatenar todos os números de 1 até i, usamos print para exibir a linha no terminal.
Passo 3
Por fim, testamos a função com os exemplos fornecidos (n=4 e n=7) para verificar se a saída bate com o enunciado.
Resposta
def piramide(n):
for i in range(n, 0, -1):
linha = “”
for j in range(1, i+1):
linha += str(j)
print(linha)
for i in range(n, 0, -1):
linha = “”
for j in range(1, i+1):
linha += str(j)
print(linha)