Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Código alternativo

O que acham desse código ? ele se mostra correto e mais simples do que o código da vídeo aula, e Sera que ele realiza a mesma funcionalidade?

function calculaImc(){

if(paciente.altura != 0){ valorPeso = pesos[i].innerHTML; varAltura = altura[i].innerHTML; imc = valorPeso/(varAltura*varAltura); infoImc[i].innerHTML = imc;

}else{ console.log("Não posso dividir por zero"); } }

var pesos = document.querySelectorAll(".info-peso"); var altura = document.querySelectorAll(".info-altura"); var paciente = document.querySelectorAll(".info-nome"); var infoImc = document.querySelectorAll(".info-imc"); for(i=0; i<paciente.length; i++){ calculaImc(); console.log(valorPeso+" "+varAltura); }

1 resposta
solução!

Olá, Mateus! Tudo bem? =)

Antes de lhe responder, lembre-se de selecionar o botão { } inserir código, caso contrário seu código não ficará formatado corretamente e dificultará o entendimento. =)

O código que você propôs é o seguinte:

function calculaImc() {
    if (paciente.altura != 0) {
        valorPeso = pesos[i].innerHTML;
        varAltura = altura[i].innerHTML;
        imc = valorPeso / (varAltura * varAltura);
       infoImc[i].innerHTML = imc;
    } else {
        console.log("Não posso dividir por zero");
    }
}

var pesos = document.querySelectorAll(".info-peso");
var altura = document.querySelectorAll(".info-altura");
var paciente = document.querySelectorAll(".info-nome");
var infoImc = document.querySelectorAll(".info-imc");

for (i = 0; i < paciente.length; i++) {
    calculaImc();
    console.log(valorPeso + " " + varAltura);
}

Você chegou a testar esse código? Pergunto pois acredito que possa haver um erro nele... =/

Na segunda linha da função calculaImc, repare que você está fazendo um if verificando paciente.altura... Entretanto, nas linhas mais abaixo, você fez o seguinte:

var paciente = document.querySelectorAll(".info-nome");

Ou seja, paciente não é um objeto, mas um array. Ele não possui a propriedade altura... Então acredito que esse código não deva funcionar da mesma forma.

Espero ter ajudado! Abraço e bons estudos,

Fábio