porque a função calculaTodosImcs, funciona mesmo não recebendo o TrPacientes como parâmetro? repare no código que o array TrPacientes está fora da funcao e mesmo assim ocorre o resultado esperado.
function calculaTodosImcs(){
percorreArray(TrPacientes, function(trAtual){
var paciente = montaPaciente(trAtual);
trAtual.getElementsByClassName("info-imc")[0].textContent = paciente.pegaImc();
});
}
var TrPacientes = document.getElementsByClassName("paciente");
var botao = document.getElementById("calcula-imcs");
botao.onclick = calculaTodosImcs;
percorreArray(TrPacientes, function(trAtual){
var paciente = montaPaciente(trAtual);
console.log(paciente.nome);
});