Lógica, perguntado por mluvi2003, 5 meses atrás

Considere o pseudo-código abaixo, qual será o valor escrito ao fim do programa?

programa Teste;

Inteiro numero = 1;

enquanto (numero != 10) {

numero = numero + 2

}

escreva(numero)

fim

Soluções para a tarefa

Respondido por fmpontes93
0

Resposta:

Nenhum valor será escrito.

Explicação:

Executemos mentalmente o pseudocódigo.

Inicialmente, declara-se a variável "numero", do tipo inteiro, e atribui-se a ela o valor 1.

Em seguida, entra-se no corpo de um laço de repetição. A condição lógica testada é se "numero" é diferente de 10. Em sendo verdadeira, o comando "numero = numero + 2" é executado.

Perceba que trata-se de um loop infinito, pois "numero" sempre será diferente de 10.

Ele inicia com o valor 1 e, cada vez que o laço é rodado, acrescentam-se 2 a "numero", de tal sorte que a ele serão atribuídos todos os naturais ímpares em sequência: 1, 3, 5, 7, 9, 11, 13, ad infinitum. O valor de "numero" nunca será igual a 10, que seria a condição para interromper o laço.

Portanto, o comando "escreva(numero)" nunca é executado.

Perguntas interessantes