
4.2 tema 7
Publicado por Erik (73 intervenciones) el 27/03/2014 16:10:54
hola, tengo que hacer lo siguiente:
Modificar el procedimiento limites de la cuestión anterior (que es el programa de arriba)para que además devuelva como parámetros por referencia, la posición en la tabla (el número del cuadro) donde se producen el máximo y el mínimo.
El programa principal sería similar a:
(*-- Programa Principal -- *)
Begin
lee_tabla(precios1, TAMCOLECCION);
imprime_tabla(precios1, TAMCOLECCION);
(* Aquí iría la invocación del nuevo procedimiento límites *)
Writeln('El maximo es ', max1:0:1, ' en la posicion ', pos_max1);
Writeln('El minimo es ', min1:0:1, ' en la posicion ', pos_min1);
End.
gracias de antemano
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure limites( var arreglo : coleccion; var min: real; var max : real); {Podrían venir inicializados desde el progama principal}
var
indice : integer;
begin
max := -20;
min := 99999;
for indice := 1 to TAMCOLECCION do
begin
if (arreglo[indice] > max) then
max := arreglo[indice];
if (arreglo[indice] < min) then
min := arreglo[indice];
end;
end;
Modificar el procedimiento limites de la cuestión anterior (que es el programa de arriba)para que además devuelva como parámetros por referencia, la posición en la tabla (el número del cuadro) donde se producen el máximo y el mínimo.
El programa principal sería similar a:
(*-- Programa Principal -- *)
Begin
lee_tabla(precios1, TAMCOLECCION);
imprime_tabla(precios1, TAMCOLECCION);
(* Aquí iría la invocación del nuevo procedimiento límites *)
Writeln('El maximo es ', max1:0:1, ' en la posicion ', pos_max1);
Writeln('El minimo es ', min1:0:1, ' en la posicion ', pos_min1);
End.
gracias de antemano
Valora esta pregunta


0