1
resposta

Dúvida sobre o Código

Tenho dúvida no que acontece por debaixo dos panos. Tenho dúvida como a var numero conversa com o número de familiarias na var totalFamiliares? e minha dúvida começa nessa var e faz um modelo cascata para o resto do codigo haha. quem puder ajudar, fico grato. segue o codigo...

<meta charset="UTF-8">

<script>
    function pulaLinha() {
        document.write("<br>");
    }

    function mostra(frase) {
        document.write(frase);
        pulaLinha();
    }

    var totalFamiliares = parseInt(prompt("Quantas pessoas tem na sua família?"));
    var numero = 1;
    var totalIdade = 0;

    while(numero <= totalFamiliares) {

        var idade = parseInt(prompt("Qual é a idade de cada um?"));
        var totalIdade = totalIdade + idade;
        numero ++;
    }

    var mediaIdade = totalIdade/totalFamiliares;
    mostra("A média das idades é " + mediaIdade)

</script>
1 resposta

Olá, David, tudo bem?

Se entendi bem sua pergunta, você quer saber como acontece a lógica entre as variáveis numero e totalFamiliares, e como elas se comportam no bloco while?

Vou tentar te passar alguns conceitos adicionais de programação, ok? Talvez te ajudem a entender o que esteja acontecendo por trás dos panos. Mesmo assim, eu diria que você não precisa se preocupar muito com isso no início dos estudos de programação, ok? :)

Mas vamos lá! Podemos dizer que as variáveis numero e totalFamiliares "conversam" quando é feita a comparação numero <= totalFamiliares. Essa comparação é uma expressão, e em programação, uma expressão sempre será "avaliada". Nesse caso, onde temos um operador de comparação <= (menor ou igual) comparando duas variáveis que armazenam números, o resultado da comparação sempre será true (verdadeiro) ou false (falso).

Você pode ler mais sobre os operadores de comparação na documentação da MDN!

No bloco while, precisamos colocar uma expressão entre os parênteses, que será avaliada. Sempre que a expressão for avaliada como true, o código dentro do bloco será executado, e sempre que for avaliada como false, a execução do while será quebrada.

Esses valores true e false são chamados de booleanos e você pode ler mais sobre eles na documentação da W3Schools (passei essa porque achei mais simplificada que a da MDN). Valores booleanos são abordados não apenas em javascript, mas em qualquer linguagem de programação!

Ou seja, nesse código, na primeira vez que é feita a verificação numero <= totalFamiliares na condição do bloco while, a variável numero está com valor 1 e totalFamiliares está com valor 3. Visto que 1 <= 3 é verdadeiro, a expressão é avalidada como true e o bloco é executado!

O código então entrará em loop, sendo executado 3 vezes, chegando o momento em que numero terá valor 4 e a expressão numero <= totalFamiliares será avaliada como false. O loop é então quebrado e o restante do código é executando normalmente.

Espero ter te ajudado! Explorar a documentação das linguagens é uma ótima forma de aprofundar seus conhecimentos, mesmo se no começo elas parecerem muito extensas e complexas.

Se tiver permanecido alguma dúvida, pode nos chamar! Estaremos aqui para te auxiliar. Abraços e bons estudos :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software