unit UAlunoAcademia; interface type TAlunoAcademia = class private nome: string; sexo: char; peso, altura: real; public constructor constroi(pNome: string; pSexo: char); procedure setNome(pNome: string); procedure setSexo(pSexo: char); procedure setPeso(pPeso: real); procedure setAltura(pAltura: real); function getNome: string; function getSexo: char; function getPeso: real; function getAltura: real; function getIMC: real; function getDiagnostico: string; function getPesoIdeal: real; end; implementation constructor TAlunoAcademia.constroi(pNome: string; pSexo: char); begin nome := pNome; sexo := pSexo; end; procedure TAlunoAcademia.setNome(pNome: string); begin nome := pNome; end; procedure TAlunoAcademia.setSexo(pSexo: char); begin sexo := pSexo; end; procedure TAlunoAcademia.setPeso(pPeso: real); begin peso := pPeso; end; procedure TAlunoAcademia.setAltura(pAltura: real); begin altura := pAltura; end; function TAlunoAcademia.getNome: string; begin getNome := nome; end; function TAlunoAcademia.getSexo: char; begin getSexo := sexo; end; function TAlunoAcademia.getPeso: real; begin getPeso := peso end; function TAlunoAcademia.getAltura: real; begin getAltura := altura; end; function TAlunoAcademia.getIMC: real; begin getIMC := peso / sqr(altura); end; function TAlunoAcademia.getDiagnostico: string; var imc: real; begin imc := getIMC; if imc < 18.5 then getDiagnostico := 'Magreza' else if imc < 25 then getDiagnostico := 'Normal' else if imc < 30 then getDiagnostico := 'Sobrepeso' else if imc < 40 then getDiagnostico := 'Obesidade grave' else getDiagnostico := 'Obesidade grave' end; function TAlunoAcademia.getPesoIdeal: real; begin if (sexo = 'F') then getPesoIdeal := (62.1 * altura) - 44.7 else if (sexo = 'M') then getPesoIdeal := (72.7 * altura) - 58 end; end.