leer notas alumnos en PASCAL

GeeK

Hola, quería saber como tendría que hacer un programa que me lea las notas de un alumno que yo introduzca por teclado y muestre la máxima y la media (con descomposición modular). Es que quiere la profesora que lo pensemos para el próximo día, pero no se me ocurre, nada, si alguien lo tiene más o menos hecho o sabe hacerlo y me puede pasar el código en pascal , se lo agradecería mucho.

Un saludo.

GeeK

necesito k las notas me las lea un procedure, había pensao esto por functions pero no sé poner el procedure para la opción 1, ahora os subo el archivo y lo veis, thx

GeeK

program Operador_Notas;

uses crt;
type vector=array[1..10] of real;
var p,q:real;
i:integer;
procedure read(var n_notas,b:real);

      begin
           writeln('Introduzca el numero de notas');
           readln(n_notas);
           for i:=1 to n_notas do
               writeln('Introduce la nota :');
               read(vector[i]);
           end;
      end;

function media(a:vector;n:integer):real;
var media: REAL;
i:Integer;
begin
media
:= 0;
for i:=1 to n do
media:= media + a;
media:= media/n;
media := media_;
end;




function maxima(a:vector;n:Integer):REAL ;
var maximo: REAL;
i: Integer;
begin
maximo
:= a[1];
for i:=2 to n do
if a>maximo_
then
maximo:= a;
maxima:= maximo
;
end;


function minima(a:vector;n:Integer):REAL ;
var minima: REAL;
i: Integer;
begin
minima
:= a[1];
for i:=2 to n do
if a< minima_
then
minima:= a;
minima:=minima
;
end;


var hecho1:BOOLEAN;n_notas,opcion,i:INTEGER;
notas: vector;
begin
hecho1:= false;
repeat
clrscr;
writeln('1: Leer las notas');
writeln('2: Mostrar la nota media');
writeln('3: Mostrar la nota maxima');
writeln('4: Mostrar la nota minima');
writeln('5: Terminar');
writeln('Escribe la opcion. Opcion =');
readln (opcion);
case opcion of
1:begin
writeln('1: Leer las notas :',
end;
hecho1:=true;
end;
2: if hecho1
then
writeln('La nota media es:',media(notas,n_notas):4:2)
else
writeln('Antes debes leer las notas');
3: if hecho1
then
writeln('La nota maxima es:',maxima(notas,n_notas):4:2)

       else
         writeln('Antes debes leer las notas');
    4:if hecho1
       then
         writeln('La nota minima es:',minima(notas,n_notas):4:2)

       else
         writeln('Antes debes leer las notas');
  end;
  writeln('Pulsa Enter para acabar'); {detiene la ejecucion}
 readln{ repeat until keypressed};  {para poder ver los resultados}
until opcion=5;

end.

GeeK

x favor, toy en un exámen, a ver si alguien sabe como lo arreglo, thx!

edit:

http://www.megaupload.com/?d=4S9P2C7W aquí he subido el .pas , x si alguien lo quiere , funciona, pero quiero con el jodido procedure xD

_KiNeD_

Ostias pues yo el año pasado hice un examen de la administración de una empresa y lo hice manual con fórmulas ^!. Haz todas las notas y luego en una casilla a parte creas la fórmula con sus respectivos sumatorios y lo que haay que hacer. ^! es más costoso pero si no hay otro modo...

GeeK

ya lo he hecho, al final me lo pasaron, muchas gracias ,he aprobao el exámen!, xDDDD, nos vemos, k ya terminó la clase, un saludo.

Usuarios habituales

  • GeeK
  • _KiNeD_