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

Tentei fazer um pouco diferente e não deu certo. Pq?

Olá pessoal,

Tentei chegar no mesmo resultado, mas por outro caminho. Ao invés de somar os IMCs meu código está concatenando e retornando assim:


"A soma dos IMCs é 24.9649464792585822.985397512168742"

Alguém pode , por favor, me ajudar a entender o problema? Meu código ficou assim:

<meta charset="UTF-8">
<script>

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

function mostra(frase) {
    document.write("<big>"+frase+"</big>");
    pulaLinha();
}

function calculaImc(peso,altura){
    return imc= peso/(altura*altura);
}

var imcFlavio=calculaImc(73,1.71);
var imcAmigo=calculaImc(68,1.72);

mostra ("A soma dos IMCs é " + imcFlavio + imcAmigo);

</script>

Obrigado!

2 respostas
solução!

Olá Gabriel,

Colocando o parenteses entre o mostra ("A soma dos IMCs é " +( imcFlavio + imcAmigo));

obtem o resultado proposto.

O Javascript interpreta a soma como concatenação, diferente da multiplicação e divisão.

outra forma for de colocar é:

var imcFlavio= calculaImc(73,1.71);
var imcAmigo= calculaImc(68,1.72);
var imcTotal = imcFlavio + imcAmigo ;

mostra ("A soma dos IMCs é " + imcTotal);
</script>

Você irá aprender isso nas próximas aulas.

Espero ter ajudado.

Ola Gustavo,

Obrigado pela ajuda e pela resposta super rápida! Acabei de ver isso na aula seguinte. Testei e funcionou. A gente aprende rápido mesmo aqui!