2
respostas

Nao consegui entender esse codigo

nao entendi esse codigo,alguem poderia me explicar de onde siu esse 3 e 4? nao consigo diferenciar se isso é um 1 ou i

2 respostas

Oi Daiane, pode copiar e colar a parte do código que você não entendeu aqui por gentileza?

Olá pessoal, tudo bem com vocês?

O código apresentado no exercício é um contador que inicia contando do 1 e tem a intenção de contar até o 7 mas para a contagem no número 5. Antes de entendermos o funcionamento do código, vamos entender separadamente os elementos presentes nele;

  • i (letra i): Variável que será o nosso contador, ela inicia recebendo o valor 1 (um).
  • while(i <= 7): Laço de repetição, em português “enquanto”. Esse laço irá repetir os códigos presentes nele “enquanto” (while) a expressão dele for verdadeira (True), note que temos a expressão i <= 7 informando que, esse laço deverá repetir enquanto o valor da variável i (letra i) for menor ou igual a 7.
  • print(i): Imprime o valor salvo na variável i (letra i).
  • i = i + 1: Nessa linha temos a soma de 1 a variável i (letra i).
  • if(i == 5): Condição if, em português “se”, onde temos a verificação do valor salvo na variável i (letra i), se o valor for 5 será executado o código dentro do if.
  • break: Quebra o laço de repetição while, terminando o código.

Agrupando os itens apresentados acima, temos.

i = 1
while(i <= 7):
    print(i)
    i = i + 1
    if(i == 5):
        break

Para podermos entender o funcionamento passo a passo do código acima, podemos utilizar o teste de mesa. Mas, o que é isso? É um modo de simularmos o funcionamento do código colocando ele em uma tabela, onde cada linha irá representar uma etapa do código e as colunas representam o código e as variáveis, como apresentado na tabela na próxima postagem.

EtapaCódigoiprint(i)breakObservações
1i = 11Declaração da variável i e salvando o valor 1(um)
2while(i <= 7):1Nesse momento é verificado se o valor da variável i é menor ou igual a 7(sete), nesse momento vale 1(um), assim é iniciado o laço while
3print(i)11É impresso o valor salvo na variável i
4i = i + 12Adicionamos 1 ao valor salvo na variável i e salvamos ela novamente na variável i
5if(i == 5):2Verificação do valor salvo na variável i
6while(i <= 7):2Reinício do laço while e é feito outra verificação do valor salvo em i
7print(i)22É impresso o valor salvo na variável i
8i = i + 13Adicionamos 1 a variável i.
9if(i == 5):3Verifica o valor salvo na variável i.
10while(i <= 7):3Verifica o valor salvo na variável i e inicia novamente o laço while.
11print(i)33Imprimimos o valor salvo na variável i.
12i = i + 14Adicionamos 1 a variável i.
13if(i == 5):4Verifica o valor salvo na variável i.
14while(i <= 7):4Verifica o valor salvo na variável i e inicia novamente o laço while.
15print(i)44Imprimimos o valor salvo na variável i.
16i = i + 15Adicionamos 1 a variável i.
17if(i == 5):5Verifica o valor salvo na variável i. Nesse momento a condição do if é verdadeira o valor salvo é 5 assim será executado o código presente no if, no nosso código é executado o break.
18break5breakNesse momento o laço while é finalizado, como não temos outras linhas de código após esse laço a execução do código é encerrada.

Note que na quarta coluna print(i) temos apenas os valores 1, 2, 3 e 4. Esses são os resultados da execução desse código, no exercício representados pela alternativa C.

Para saber um pouco mais sobre o teste de mesa, recomendo que veja o seguinte vídeo:

Em caso de dúvidas, encontro-me à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!