Solucionado (ver solução)
Solucionado
(ver solução)
6
respostas

Nao consegui fazer com que aparece-se alguns números

Qual foi o meu erro?Quando eu rodo o código ele não aprecem os seguintes números 31,35,39 que deveriam aparecer.

<meta charset="UTF-8">
<script>
    function pulaLinha(){
        document.write("<br><hr><br>");
    }
    function escreve(txt){
        document.write(txt);
        pulaLinha();
    }
    var numero1 = 30
    var numero2 = 40 

    while(numero1 <= numero2){
        escreve("Os numeros pares entre esses numeros são:"+numero1);
        numero1 = numero1 + 1 ; 
        if(33 == 33 && 37 == 37){
            numero1 = numero1 + 1;
        }


    }




    </script>
6 respostas

Boa tarde, Lucas! Como vai?

Pq vc acha que o seu código deveria imprimir esse números? Ele está imprimindo corretamente somente os números pares de 30 a 40 como ele se propõe a fazer.

Desculpe ,esqueci de apagar o "Os números pares entre esses números são:" que era do exercício anterior, estou no exercício 04 da aula 07 em que deve aparecer todos os números entre 30 a 40, exceto 33 e 37!

Dei uma arrumada, agr aparece todos os números de 30 a 40 até mesmo os que não eram para aparecer. Não sei em que eu errei.

<meta charset="UTF-8">
<script>
    function pulaLinha(){
        document.write("<br><hr><br>");
    }
    function escreve(txt){
        document.write(txt);
        pulaLinha();
    }
    var numero1 = 30
    var numero2 = 40 

    while(numero1 <= numero2){
        escreve("Os numeros são:"+numero1);
        if(33 == 33 && 37 == 37){
            }
    numero1 = numero1 + 1;

    }
    escreve("FIM")




    </script>
solução!

Oi, Lucas! Tudo bem? Vamos pensar um pouco no if dentro do seu laço while. Em primeiro lugar, ele está vazio! Então nada acontece se o resultado do if for verdadeiro, dessa forma essa condição nem faz diferença. O segundo problema desse if, é que ele está comparando se 33 é igual a 33 e se 37 é igual a 37, o que sempre será verdade! Nós queremos comparar, na verdade, se o número da vez no while é igual a 33 ou 37. Se o número não for igual, ou seja, se for diferente (!=) a 33 e 37, queremos que ele seja impresso na tela. Podemos alterar o seu código dessa maneira:

while (numero1 <= numero2) {
    if (numero1 != 33 && numero1 != 37) {
        escreve("Os numeros são:"+numero1);
    }
    numero1 = numero1 + 1
}

Deu pra entender mais ou menos, Lucas? Se ficou confuso o que eu expliquei pode falar, hehehe, abraços!

Opa Yan, muito obrigado agora sim entendi, oque eu estava fazendo de errado era estar usando o (==) em vez do (!=) e colocando a minha função (escreve) dentro da (while) e não da (if) entendi certo?

Isso mesmo, Lucas! E também que você estava comparando 33 com 33 e 37 com 37, em vez da variável numero1 com esses números.

Bons estudos!

Muito obrigado Yan.