• Lenguaje

    Pascal

  • Descripción

    Se ha seleccionado N personas para realizar una encuesta, en un proceso repetitivo se ingresa el grado de instrucción (IP-Instrucción Primaria, IS- Instrucción Superior, SS- Educación Superior) y la edad de cada persona. Desarrollar el algoritmo que muestre lo siguiente:
    a) El promedio de edades de todas las personas.
    b) La mayor edad.
    c) Cantidad de personas con instrucción Primaria.
    d) Cantidad de personas con instrucción Secundaria.
    e) Cantidad de personas con instrucción Superior.

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
program EncuestaDeGradoDeInstruccionYEdad;
uses crt;

var edad, grado_de_instruccion, i, mayor_edad, n : integer;
var personas_con_primaria, personas_con_secundaria, personas_con_superior : integer;
var promedio_de_edades : real;
begin
    mayor_edad := 0;
    personas_con_primaria := 0;
    personas_con_secundaria := 0;
    personas_con_superior := 0;
    promedio_de_edades := 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 grado de instruccion.');
        writeln ('    1.- IP - Instrucci'#162'n Primaria');
        writeln ('    2.- IS - Instrucci'#162'n Superior');
        writeln ('    3.- SS - Educaci'#162'n Superior');
        write ('    : ');
        repeat
            readln (grado_de_instruccion);
            if (grado_de_instruccion<1) or (grado_de_instruccion>3) then
                write ('Valor incorrecto. Ingr'#130'salo nuevamente.: ');
        until (grado_de_instruccion>=1) and (grado_de_instruccion<=3);
        promedio_de_edades := promedio_de_edades+edad;
        if grado_de_instruccion=1 then
            begin
                personas_con_primaria := personas_con_primaria+1;
            end;
        if grado_de_instruccion=2 then
            begin
                personas_con_secundaria := personas_con_secundaria+1;
            end;
        if grado_de_instruccion=3 then
            begin
                personas_con_superior := personas_con_superior+1;
            end;
        if (i=1) or (edad<mayor_edad) then
            begin
                mayor_edad := edad;
            end;
        writeln;
    end;
    if n = 0 then
        promedio_de_edades := 0
    else
        promedio_de_edades := promedio_de_edades/n;
    writeln ('Valor de mayor edad: ', mayor_edad);
    writeln ('Valor de personas con primaria: ', personas_con_primaria);
    writeln ('Valor de personas con secundaria: ', personas_con_secundaria);
    writeln ('Valor de personas con superior: ', personas_con_superior);
    writeln ('Valor de promedio de edades: ', promedio_de_edades:0:6);
    write ('Presiona una tecla para terminar . . . ');
    readkey;
end.