Informática, perguntado por isaacozorio3544, 11 meses atrás

Algoritmo A0001 var res, cont, x, n: Inteiro inicio cont <- n, res <- 0, x <- 2, n <- 4 enquanto (cont>=n) faca res <- res * x cont <- cont + 1 fimEnquanto escreva(res) fimAlgoritmo

Soluções para a tarefa

Respondido por bokomoko
6
Algoritmo A0001
var res, cont, x, n: Inteiro
inicio
cont <- n,
res <- 0,
x <- 2,
n <- 4
enquanto (cont>=n) faca
         res <- res * x
         cont <- cont + 1
fimEnquanto
escreva(res)
fimAlgoritmo

Esse algoritmo faz nada

Observe, o primeiro comando atribui a variável cont o valor da variável n.
Acontece que a variável n não foi inicializada. Considerando que ela é do tipo inteiro então supostamente ela tem valor 0

Em seguida a variável res é inicializada com 0. Isso é muito importante pois dentro do loop "enquanto" é feito o produtório de res * x
Acontece que res é 0 portanto esse produtório vai ser 0 o tempo todo.

Só que o loop sequer acontece pois a comparação é cont >= n
Ora, como cont é 0 e n assume o valor 4 por atribuição, então logo de cara a condição dá falso e o loop não é executado.

Ainda bem pois iria só perder tempo pois o res seria 0 

E é isso que o algoritmo imprime. Um big de um 0 e só ...
nada de útil

Perguntas interessantes