Mario (less)
Implemente um programa que imprima uma meia pirâmide com uma altura especificada, como abaixo.
$ python mario.py
Height: 4
# #
## ##
### ###
#### ####
Começando
Acesse code.cs50.io, clique na sua janela de terminal e execute cd
sozinho. Você deverá ver que o prompt da sua janela de terminal se parece com o seguinte:
$
Depois execute
wget https://cdn.cs50.net/2022/fall/psets/6/sentimental-mario-more.zip
Para baixar um arquivo ZIP chamado sentimental-mario-more.zip
em seu espaço de códigos, siga estes passos:
Em seguida, execute:
unzip sentimental-mario-more.zip
para criar uma pasta chamada sentimental-mario-more
. Você não precisa mais do arquivo ZIP, então pode executar
rm sentimental-mario-more.zip
e responda com "y" seguido de Enter no prompt para remover o arquivo ZIP que você baixou.
Agora digite
cd sentimental-mario-more
seguido por Enter para mover-se para dentro (ou seja, abrir) esse diretório. Seu prompt agora deve se parecer com o abaixo.
sentimental-mario-more/ $
Execute ls
sozinho e você deve ver um arquivo mario.py
. Se você tiver algum problema, siga os mesmos passos novamente e veja se consegue determinar onde errou!
Especificação
- Escreva, em um arquivo chamado
mario.py
, um programa que recrie essas meio-pirâmides usando hashes (#
) para os blocos, exatamente como você fez no Problem Set 1, exceto que seu programa desta vez deve ser escrito em Python. - Para tornar as coisas mais interessantes, primeiro solicite ao usuário, por meio de
get_int
, a altura da meio-pirâmide, um número inteiro positivo entre1
e8
, inclusive. (A altura das meio-pirâmides mostradas acima é igual a4
, a largura de cada meio-pirâmide é4
, com um espaço de tamanho2
separando-as). - Se o usuário não fornecer um número inteiro positivo maior do que
8
, você deve solicitar novamente a mesma informação. - Em seguida, gere (com a ajuda de
print
e um ou mais loops) as meio-pirâmides desejadas. - Certifique-se de alinhar o canto inferior esquerdo da pirâmide com a borda esquerda da janela do terminal e garantir que haja dois espaços entre as duas pirâmides e que não haja espaços adicionais após o último conjunto de hashes em cada linha.
Uso
Seu programa deve se comportar como o exemplo abaixo.
$ python mario.py
Height: 4
# #
## ##
### ###
#### ####
Testando
Embora o check50
esteja disponível para este problema, é encorajado que você primeiro teste seu código por conta própria para cada um dos seguintes casos.
- Execute seu programa como
python mario.py
e aguarde por uma solicitação de entrada. Digite-1
e pressione enter. Seu programa deve rejeitar essa entrada como inválida, solicitando novamente ao usuário que digite outro número. - Execute seu programa como
python mario.py
e aguarde por uma solicitação de entrada. Digite0
e pressione enter. Seu programa deve rejeitar essa entrada como inválida, solicitando novamente ao usuário que digite outro número. - Execute seu programa como
python mario.py
e aguarde por uma solicitação de entrada. Digite1
e pressione enter. Seu programa deve gerar a saída abaixo. Certifique-se de que a pirâmide esteja alinhada com o canto inferior esquerdo do seu terminal e que não haja espaços extras no final de cada linha.
# #
- Execute seu programa como
python mario.py
e aguarde o prompt para entrada de dados. Digite2
e pressione enter. Seu programa deve gerar a saída abaixo. Certifique-se de que a pirâmide esteja alinhada com o canto inferior esquerdo do seu terminal e que não haja espaços extras no final de cada linha.
# #
## ##
- Execute o seu programa como
python mario.py
e aguarde por um prompt para entrada. Digite8
e pressione enter. Seu programa deve gerar a saída abaixo. Certifique-se de que a pirâmide esteja alinhada ao canto inferior esquerdo do seu terminal e que não haja espaços extras no final de cada linha.
# #
## ##
### ###
#### ####
##### #####
###### ######
####### #######
######## ########
- Execute seu programa como
python mario.py
e aguarde pelo prompt de entrada. Digite9
e pressione enter. Seu programa deve rejeitar esta entrada como inválida, pedindo novamente para o usuário digitar outro número. Em seguida, digite2
e pressione enter. Seu programa deve gerar a saída abaixo. Certifique-se de que a pirâmide esteja alinhada com o canto inferior esquerdo do seu terminal e que não haja espaços extras no final de cada linha.
# #
## ##
- Execute o seu programa como
python mario.py
e aguarde por um prompt para a entrada. Digitefoo
e pressione enter. Seu programa deve rejeitar essa entrada como inválida, pedindo novamente para o usuário digitar outro número. - Execute o seu programa como
python mario.py
e aguarde por um prompt para a entrada. Não digite nada e pressione enter. Seu programa deve rejeitar essa entrada como inválida, pedindo novamente para o usuário digitar outro número.
Execute o código abaixo para avaliar a correção do seu programa usando check50
. Mas certifique-se de compilar e testar por conta própria também!
check50 cs50/problems/2023/x/sentimental/mario/more
Execute o código abaixo para avaliar o estilo do seu código usando style50
.
style50 mario.py
Como Enviar
No seu terminal, execute abaixo para enviar seu trabalho.
submit50 cs50/problems/2023/x/sentimental/mario/more