Olá, Jeferson, como você está? Espero que esteja bem.
Agradeço o aguardo da resposta.
Analisei o seu código das duas perguntas e ambos os códigos estão corretos. Caso, a sua pergunta seja o porquê do programa esteja imprimindo o contador com um valor a menos do que declarado na variável contador, é porque a iteração está sendo realizada antes da chamada da função mostra. Com isso, o primeiro contador, não chega a ser impresso, pois a operação é feita antes de imprimir.
No primeiro código, ao invés de mostrar 21 como primeiro contador, ele imprimirá 20. E no segundo código, ao invés de 20, será 19.
Segue os códigos com as devidas correções abaixo:
var contador = 21;
while( contador >= 1 ) {
mostra("contador " + contador);
contador = contador - 1;
}
mostra("fim");
var contador = 20;
while( contador >= 0 ) {
mostra("contador " + contador);
contador = contador - 1;
}
mostra("fim");
Espero ter ajudado!
Abraços.
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!