insira seu código aqui
var numero = 30;
while(numero <= 40) {
if (numero >=33 || numero <=37) {
numero = numero + 1;
mostra("numero");
}
}
insira seu código aqui
var numero = 30;
while(numero <= 40) {
if (numero >=33 || numero <=37) {
numero = numero + 1;
mostra("numero");
}
}
Oi Cleiton, tudo bem?
Acredito que seja porque você está passando uma string "numero" para a função mostra, ao invés de passar a variável número.
Tente trocar
mostra("numero");
por
mostra(numero);
e veja se funciona.
tem razão foi por isso que aparecia o nome numero na tela . mas tem um porem o numero 33 e 37 apareceu na tela .
Isso porque você colocou >= e <= . Ou seja, quando é 33 ou 37, o código de dentro do if ainda é mostrado na tela.
Se você mudar para maior e menor
if (numero >33 || numero <37) {
//...
Haverá o mesmo problema, pois quando o numero for 33, entrará dentro do if, pois 33 é menor que 37 (a segunda condição é satisfeita e como estamos usando o operador OU , apenas uma condição basta)
Então trocaríamos o OU (||) pelo E (&&) , onde as 2 condições precisam ser verdadeiras
if (numero > 33 && numero < 37) {
numero = numero + 1;
mostra("numero");
}
Mas note que haveremos ainda mais um problema, pois o primeiro numero é 30
O programa irá checar se 30 é maior que 33 (FALSE) E menor que 37 (TRUE)
TRUE E FALSE = FALSE
E é isso que queremos, só queremos mostrar quando as 2 condições forem verdadeiras.
Porém, da forma que está o programa, nunca sairá do numero 30, pois só é somado quando as duas condições forem verdadeiras.
Então fazemos o seguinte código:
while(numero <= 40) {
// Mudamos >= para > e <= para <
if (numero > 33 && numero < 37) {
// movi o código dessa linha para fora do if
mostra("numero");
}
numero = numero + 1;
}
Dessa forma, o numero vai aumentando e só mostra quando for maior que 33e maior que 37.
Espero que tenha ajudado. :)
Olá Cleiton, tudo bem? Sua dúvida foi esclarecida?