-
Lenguaje
Pascal
-
Descripción
Se tienen N registros donde cada uno de ellos contiene:
- Estatura (1: Alto, 2: Bajo, 3: Mediano).
- Nacionalidad (1: Latino, 2: Germano, 3: Hindú).
- Edad.
Determine: número de hindúes altos, latinos medianos, total de latinos, germanos bajos, total de germanos menores de 30 años y latinos bajos menores de 40 años, promedio de edad de los latinos, germanos e hindúes.
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
program EstaturaNacionalidadYEdad;
uses crt;
var edad, estatura, germanos_bajos, germanos_menores_de_30, hindues_altos : integer;
var i, latinos_bajos_menores_de_40, latinos_medianos, n, nacionalidad : integer;
var total_germanos, total_hindues, total_latinos : integer;
var promedio_de_edad_germanos, promedio_de_edad_hindues, promedio_de_edad_latinos : real;
begin
germanos_bajos := 0;
germanos_menores_de_30 := 0;
hindues_altos := 0;
latinos_bajos_menores_de_40 := 0;
latinos_medianos := 0;
total_hindues := 0;
total_germanos := 0;
total_latinos := 0;
promedio_de_edad_hindues := 0;
promedio_de_edad_germanos := 0;
promedio_de_edad_latinos := 0;
write ('Ingresa el valor de n: ');
readln (n);
for i:=1 to n do
begin
writeln ('PROCESO ', i);
write ('Ingresa el valor de edad: ');
readln (edad);
writeln ('Selecciona el valor de estatura.');
writeln (' 1.- Alto');
writeln (' 2.- Bajo');
writeln (' 3.- Mediano');
write (' : ');
repeat
readln (estatura);
if (estatura<1) or (estatura>3) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (estatura>=1) and (estatura<=3);
writeln ('Selecciona el valor de nacionalidad.');
writeln (' 1.- Latino');
writeln (' 2.- Germano');
writeln (' 3.- Hind'#163);
write (' : ');
repeat
readln (nacionalidad);
if (nacionalidad<1) or (nacionalidad>3) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (nacionalidad>=1) and (nacionalidad<=3);
if (nacionalidad=2) and (estatura=2) then
begin
germanos_bajos := germanos_bajos+1;
end;
if (nacionalidad=2) and (edad<30) then
begin
germanos_menores_de_30 := germanos_menores_de_30+1;
end;
if (nacionalidad=3) and (estatura=1) then
begin
hindues_altos := hindues_altos+1;
end;
if (nacionalidad=1) and (estatura=2) and (edad<40) then
begin
latinos_bajos_menores_de_40 := latinos_bajos_menores_de_40+1;
end;
if (nacionalidad=1) and (estatura=3) then
begin
latinos_medianos := latinos_medianos+1;
end;
if nacionalidad=1 then
begin
promedio_de_edad_latinos := promedio_de_edad_latinos+edad;
total_latinos := total_latinos+1;
end;
if nacionalidad=2 then
begin
promedio_de_edad_germanos := promedio_de_edad_germanos+edad;
total_germanos := total_germanos+1;
end;
if nacionalidad=3 then
begin
promedio_de_edad_hindues := promedio_de_edad_hindues+edad;
total_hindues := total_hindues+1;
end;
writeln;
end;
if total_hindues = 0 then
promedio_de_edad_hindues := 0
else
promedio_de_edad_hindues := promedio_de_edad_hindues/total_hindues;
if total_germanos = 0 then
promedio_de_edad_germanos := 0
else
promedio_de_edad_germanos := promedio_de_edad_germanos/total_germanos;
if total_latinos = 0 then
promedio_de_edad_latinos := 0
else
promedio_de_edad_latinos := promedio_de_edad_latinos/total_latinos;
writeln ('Valor de germanos bajos: ', germanos_bajos);
writeln ('Valor de germanos menores de 30: ', germanos_menores_de_30);
writeln ('Valor de hindues altos: ', hindues_altos);
writeln ('Valor de latinos bajos menores de 40: ', latinos_bajos_menores_de_40);
writeln ('Valor de latinos medianos: ', latinos_medianos);
writeln ('Valor de total hindues: ', total_hindues);
writeln ('Valor de total germanos: ', total_germanos);
writeln ('Valor de total latinos: ', total_latinos);
writeln ('Valor de promedio de edad hindues: ', promedio_de_edad_hindues:0:6);
writeln ('Valor de promedio de edad germanos: ', promedio_de_edad_germanos:0:6);
writeln ('Valor de promedio de edad latinos: ', promedio_de_edad_latinos:0:6);
write ('Presiona una tecla para terminar . . . ');
readkey;
end.
uses crt;
var edad, estatura, germanos_bajos, germanos_menores_de_30, hindues_altos : integer;
var i, latinos_bajos_menores_de_40, latinos_medianos, n, nacionalidad : integer;
var total_germanos, total_hindues, total_latinos : integer;
var promedio_de_edad_germanos, promedio_de_edad_hindues, promedio_de_edad_latinos : real;
begin
germanos_bajos := 0;
germanos_menores_de_30 := 0;
hindues_altos := 0;
latinos_bajos_menores_de_40 := 0;
latinos_medianos := 0;
total_hindues := 0;
total_germanos := 0;
total_latinos := 0;
promedio_de_edad_hindues := 0;
promedio_de_edad_germanos := 0;
promedio_de_edad_latinos := 0;
write ('Ingresa el valor de n: ');
readln (n);
for i:=1 to n do
begin
writeln ('PROCESO ', i);
write ('Ingresa el valor de edad: ');
readln (edad);
writeln ('Selecciona el valor de estatura.');
writeln (' 1.- Alto');
writeln (' 2.- Bajo');
writeln (' 3.- Mediano');
write (' : ');
repeat
readln (estatura);
if (estatura<1) or (estatura>3) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (estatura>=1) and (estatura<=3);
writeln ('Selecciona el valor de nacionalidad.');
writeln (' 1.- Latino');
writeln (' 2.- Germano');
writeln (' 3.- Hind'#163);
write (' : ');
repeat
readln (nacionalidad);
if (nacionalidad<1) or (nacionalidad>3) then
write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
until (nacionalidad>=1) and (nacionalidad<=3);
if (nacionalidad=2) and (estatura=2) then
begin
germanos_bajos := germanos_bajos+1;
end;
if (nacionalidad=2) and (edad<30) then
begin
germanos_menores_de_30 := germanos_menores_de_30+1;
end;
if (nacionalidad=3) and (estatura=1) then
begin
hindues_altos := hindues_altos+1;
end;
if (nacionalidad=1) and (estatura=2) and (edad<40) then
begin
latinos_bajos_menores_de_40 := latinos_bajos_menores_de_40+1;
end;
if (nacionalidad=1) and (estatura=3) then
begin
latinos_medianos := latinos_medianos+1;
end;
if nacionalidad=1 then
begin
promedio_de_edad_latinos := promedio_de_edad_latinos+edad;
total_latinos := total_latinos+1;
end;
if nacionalidad=2 then
begin
promedio_de_edad_germanos := promedio_de_edad_germanos+edad;
total_germanos := total_germanos+1;
end;
if nacionalidad=3 then
begin
promedio_de_edad_hindues := promedio_de_edad_hindues+edad;
total_hindues := total_hindues+1;
end;
writeln;
end;
if total_hindues = 0 then
promedio_de_edad_hindues := 0
else
promedio_de_edad_hindues := promedio_de_edad_hindues/total_hindues;
if total_germanos = 0 then
promedio_de_edad_germanos := 0
else
promedio_de_edad_germanos := promedio_de_edad_germanos/total_germanos;
if total_latinos = 0 then
promedio_de_edad_latinos := 0
else
promedio_de_edad_latinos := promedio_de_edad_latinos/total_latinos;
writeln ('Valor de germanos bajos: ', germanos_bajos);
writeln ('Valor de germanos menores de 30: ', germanos_menores_de_30);
writeln ('Valor de hindues altos: ', hindues_altos);
writeln ('Valor de latinos bajos menores de 40: ', latinos_bajos_menores_de_40);
writeln ('Valor de latinos medianos: ', latinos_medianos);
writeln ('Valor de total hindues: ', total_hindues);
writeln ('Valor de total germanos: ', total_germanos);
writeln ('Valor de total latinos: ', total_latinos);
writeln ('Valor de promedio de edad hindues: ', promedio_de_edad_hindues:0:6);
writeln ('Valor de promedio de edad germanos: ', promedio_de_edad_germanos:0:6);
writeln ('Valor de promedio de edad latinos: ', promedio_de_edad_latinos:0:6);
write ('Presiona una tecla para terminar . . . ');
readkey;
end.