ao invés de escrever as alterações (estilo) dentro do IF peso e IF altura , porque não deixa no último ELSE e assim economiza linhas de código
if (peso <=0 || peso>=1000) {
console.log("peso inválido");
pesoEhValido = false;
tdImc.textContent = "peso inválido";
}else if (altura <=0 || altura >=3) {
alturaEhValida=false;
tdImc.textContent= "altura inválida";
pacientes[i].style.backgroundColor = "red";
}
if (pesoEhValido&&alturaEhValida) {
var imc = peso/(altura*altura);
tdImc.textContent = imc.toFixed(2);
}else{
// pacientes[i].style.backgroundColor = "red";
pacientes[i].classList.add("paciente-invalido");
}
}