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

[Sugestão] Resolução diferente

Olá! Antes de prosseguir com a aula de aplicar o cálculo para todos os usuários, tentei fazer por conta própria e atingi o seguinte resultado:

"use strict";

var peso = document.getElementsByClassName("info-peso");
var altura = document.getElementsByClassName("info-altura");
var imc = document.getElementsByClassName("info-imc");
var qntdPacientes = document.getElementById("tabela-pacientes").rows.length;

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

for (let i = 0; i < qntdPacientes; i++) {
    let pesoValor = parseFloat(peso[i].textContent); // converte para um número
    let alturaValor = parseFloat(altura[i].textContent); // converte para um número

    if (pesoValor <= 0 || pesoValor > 1000) {
        peso[i].textContent = "Peso Inválido";

        if (alturaValor <= 0 || alturaValor >= 3) {
            altura[i].textContent = "Altura Inválida";
        }

        imc[i].textContent = "IMC Inválido";
    } else if (alturaValor <= 0 || alturaValor >= 3) {
        altura[i].textContent = "Altura Inválida";
        imc[i].textContent = "IMC Inválido";
    } else {
        imc[i].textContent = calculaImc(
            peso[i].textContent,
            altura[i].textContent
        ).toFixed(2);
    }
}
1 resposta
solução!

Oi Artur, tudo bem?

Muito obrigada por compartilhar com a gente o seu resultado! Muito bom mesmo tentar fazer por conta própria que aí você praticar. :D

Parabéns pela dedicação. Gostei bastante do resultado.

Continue os bons estudos.

Um abraço.