-
Lenguaje
Pascal
-
Descripción
Para estimar la altura de un individuo, los forenses y antropólogos suelen utilizar huesos largos de la pierna. Los datos son fiables siempre que se utilicen huesos adultos, y primero hay que determinar si el hueso utilizado es de un hombre o de una mujer.
Las ecuaciones que nos determinan la altura en función de las medidas del fémur o de la tibia son ecuaciones de rectas, veamos las fórmulas de estas rectas y las estimaciones de la altura de un varón en función del fémur y de la tibia.
Fórmulas para determinar estatura
(Trotter y Glewser, 1958)
Huesos | Varones | Mujeres
Fémur | 2.38 x long. máx + 61.41 | 2.47 x long. máx + 54.10
Tibia | 2.52 x long. máx + 78.62 | 2.90 x long. máx + 61.53
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
program AlturaDeUnIndividuo;
uses crt;
var genero, hueso : integer;
var altura, long_max : real;
var tecla_repetir : char;
begin
repeat
clrscr;
write ('Ingresa el valor de long max: ');
readln (long_max);
writeln ('Selecciona el valor de hueso.');
writeln (' 1.- F'#130'mur');
writeln (' 2.- Tibia');
write (' : ');
repeat
readln (hueso);
if (hueso<1) or (hueso>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (hueso>=1) and (hueso<=2);
writeln ('Selecciona el valor de genero.');
writeln (' 1.- Var'#162'n');
writeln (' 2.- Mujer');
write (' : ');
repeat
readln (genero);
if (genero<1) or (genero>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (genero>=1) and (genero<=2);
altura := 0;
if (hueso=1) and (genero=1) then
begin
altura := 2.38*long_max+61.41;
end;
if (hueso=1) and (genero=2) then
begin
altura := 2.47*long_max+54.10;
end;
if (hueso=2) and (genero=1) then
begin
altura := 2.52*long_max+78.62;
end;
if (hueso=2) and (genero=2) then
begin
altura := 2.90*long_max+61.53;
end;
writeln ('Valor de altura: ', altura:0:6);
writeln;
write (#168'Deseas repetir el proceso? (S/N): ');
repeat
tecla_repetir := readkey;
until (tecla_repetir = 's') or (tecla_repetir = 'n') or (tecla_repetir = 'S') or (tecla_repetir = 'N');
until (tecla_repetir <> 's') and (tecla_repetir <> 'S');
end.
uses crt;
var genero, hueso : integer;
var altura, long_max : real;
var tecla_repetir : char;
begin
repeat
clrscr;
write ('Ingresa el valor de long max: ');
readln (long_max);
writeln ('Selecciona el valor de hueso.');
writeln (' 1.- F'#130'mur');
writeln (' 2.- Tibia');
write (' : ');
repeat
readln (hueso);
if (hueso<1) or (hueso>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (hueso>=1) and (hueso<=2);
writeln ('Selecciona el valor de genero.');
writeln (' 1.- Var'#162'n');
writeln (' 2.- Mujer');
write (' : ');
repeat
readln (genero);
if (genero<1) or (genero>2) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (genero>=1) and (genero<=2);
altura := 0;
if (hueso=1) and (genero=1) then
begin
altura := 2.38*long_max+61.41;
end;
if (hueso=1) and (genero=2) then
begin
altura := 2.47*long_max+54.10;
end;
if (hueso=2) and (genero=1) then
begin
altura := 2.52*long_max+78.62;
end;
if (hueso=2) and (genero=2) then
begin
altura := 2.90*long_max+61.53;
end;
writeln ('Valor de altura: ', altura:0:6);
writeln;
write (#168'Deseas repetir el proceso? (S/N): ');
repeat
tecla_repetir := readkey;
until (tecla_repetir = 's') or (tecla_repetir = 'n') or (tecla_repetir = 'S') or (tecla_repetir = 'N');
until (tecla_repetir <> 's') and (tecla_repetir <> 'S');
end.