Pascal/Turbo Pascal - programa en pascal

 
Vista:

programa en pascal

Publicado por augusto (1 intervención) el 28/04/2013 20:20:26
Hola, necesito ayuda con este programa:
1.- preguntar el nombre,sexo y dos calificaciones, calcular promedio de las calificaciones, contar aprobados y reprobados y tambien contar hombres y mujeres, con ciclos en for.
Ayuda por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

programa en pascal

Publicado por ramon (2158 intervenciones) el 29/04/2013 20:18:54
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
{Serviría esto}
 
 program calculo;
 uses
    crt;
 type
  regdatos = record
        nombre : string[80];
        sexo   : char;
        calif1 : real;
        calif2 : real;
       end;
 
  const
      estudi = 5;
 
  var
    datos : array[1..estudi] of regdatos;
    cont : integer;
    tec : char;
    prom : array[1..estudi] of real;
    prov, reprov : integer;
    t, muj, hom : integer;
 
  procedure entradas;
  begin
     cont := 1;
   repeat
      clrscr;
      writeln('*** Entrada Datos Estudiante Num [',cont,'] ***');
      writeln;
      write('   Nombre : ');
      readln(datos[cont].nombre);
      write('   Sexo [F/M] : ');
      repeat
         tec := upcase(readkey);
      until tec in['F','M'];
      writeln(tec);
      datos[cont].sexo := tec;
      write('   calificacion 1 :  ');
      readln(datos[cont].calif1);
      write('   calificacion 2 :  ');
      readln(datos[cont].calif2);
      cont := cont + 1;
   until cont > estudi;
   for t := 1 to cont - 1 do
   begin
       prom[t] := (datos[t].calif1 + datos[t].calif2) / 2;
       if datos[t].sexo = 'F' then
       muj := muj + 1;
       if datos[t].sexo = 'M' then
       hom := hom + 1;
       if round(prom[t]) in[6,7,8] then
       prov := prov + 1;
       if round(prom[t]) in[9,10,11,12] then
       reprov := reprov + 1;
   end;
  end;
 
  begin
      clrscr;
      entradas;
      writeln('    Promedios');
      writeln;
      for t := 1 to cont - 1 do
      begin
         write(' ',prom[t]:0:2);
      end;
        writeln;
        writeln('    Aprovados  = ',prov);
        writeln('    Reprovados = ',reprov);
        writeln('    Femeninos  = ',muj);
        writeln('    Masculino  = ',hom);
        writeln;
        writeln('    Pulse [Enter]');
        readln;
  end.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar