Procedimiento de máximo y mínimos

Haber si alguien me puede ayudar en hacer un procedimiento que dados 3 parámetros de entrada, como parámetro de salida tenga el máximo y el mínimo de los 3 parámetros.

1 Respuesta

Respuesta
1
Lo que hay que hacer para resolver este ejercicio es buscar la manera de realizar una comparación entre los 3 números que te dan, supongamos a, b, c... Hay que tomar en cuenta que si a=b=c entonces el mínimo será igual al máximo por ejemplo:
10 10 10
min=10
max=10
Podrían realizarse muchas comparaciones pero de la manera siguiente puedes resolver el problema:
procedure maxmin(a,b,c:integer;var max:integer;var min:integer);
begin
max:=a;
min:=a;
if(b>max)then
max:=b;
if(b<min)then
min:=b;
if(c>max)then
max:=c;
if(c<min)then
min:=c;
end;
Este procedimiento recibe 5 parámetros (a, b, c que son los números a comparar, y max y min que guardaran el valor del máximo y el mínimo entre los valores.
Luego se le asigna un valor de iniciación al máximo y al mínimo, en este caso:
max:=a;
max:=a;
Después que tenemos el valor inicial se pueden comparar las dos variables restantes, primero la b y y luego la c, para determinar si los valores que han tomado las variables de comparación (max, min) son menores o mayores a las mismas.
La llamada a la función será algo como:
var max,min:integer;
.
.
maxmin(10,11,12,max,min);
Con estos valores devolverá:
max=12;
min=10;
Todo problema puede tener mil soluciones.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas