Skip to content

Instantly share code, notes, and snippets.

@fernandosavio
Last active June 7, 2017 18:06
Show Gist options
  • Save fernandosavio/285cdac35488dbcc6d456a7a5536c17d to your computer and use it in GitHub Desktop.
Save fernandosavio/285cdac35488dbcc6d456a7a5536c17d to your computer and use it in GitHub Desktop.
Escreva um programa que solicite ao usuário o valor de N, um número natural. N será a altura do triângulo retângulo a ser desenhado na tela pelo seu programa, usando apenas o caractere * (asterisco).
# recebe um input do usuário
n = int(input("Altura do triângulo: "))
# se não for um número natural não faz nada
if n <= 0:
print("Número deve ser positivo")
else:
# Documentação da função range: https://docs.python.org/3/library/stdtypes.html#typesseq-range
# cria um range que retorna números ímpares a cada iteração,
# ou seja, 1, 3, 5, 7, 9, 11, ...
# estes serão o número de asteríscos por linha
# Ex.:
# n = 4
# range(1, 2 * 4, 2)
# range(1, 8, 2)
# 1, 3, 5, 7
# perceba que o range retornará um sequência de 4 elemento, que é o nosso N
for x in range(1, 2 * n, 2):
# Documentação do align: https://pyformat.info/#string_pad_align_4
# '{:^80}' -> centraliza uma string em 80 caracteres preenchendo o restante com espaço
#
# '*' * 3 = '***'
# multiplicar uma string por um inteiro X faz com que a string se repita X vezes
print('{:^80}'.format("*" * x))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment