[ Foro de Pascal ]
Hola, veréis acabo de hacer un programas que trata de que con subprogramas de tipo procedimiento, tengo que ordenar tres números cualquieras de menor a mayor.
El caso es que yo he hecho este programa, pero a la hora de arrancar no me arranca el programas, sin darme ningún error ni nada.
program prog;
{Proposito: ordenar tres numeros de menor a mayor}
{Entrada: los tres numeros desordenados}
{Salida: los tres numero ordenados de menor a mayor}
var n1, n2, n3, nalto, nbajo, nmedio: integer;s
procedure numeromayor (n1, n2, n3, nalto: integer);
begin
if (n3>n2) and (n3>n1) then
nalto:= n3;
if (n1>n3) and (n1>n2) then
nalto:= n1;
if (n2>n1) and (n2>n3) then
nalto:= n2;
end;
procedure numeromenor (n1, n2, n3, nbajo: integer);
begin
if (n1<n3) and (n1<n2) then
nbajo:= n1;
if (n2<n1) and (n2<n3) then
nbajo:= n2;
if (n3<n1) and (n3<n2) then
nbajo:= n3;
end;
procedure numeromedio (n1, n2, n3, nmedio: integer);
begin
if (n1>n2) and (n1<n3) then
nmedio:= n1;
if (n1>n3) and (n1<n2) then
nmedio:= n1;
if (n2>n1) and (n2<n3) then
nmedio:= n2;
if (n2>n3) and (n2<n1) then
nmedio:= n2;
if (n3>n1) and (n3<n2) then
nmedio:= n3;
if (n3>n2) and (n3<n1) then
nmedio:= n3;
end;
begin
writeln('Escribe los tres numeros que quieres ordenar');
readln(n1, n2, n3);
numeromayor
numeromenor
numeromedio
writeln('Los numeros ordenados de menor a mayor son estos');
writeln(nbajo);
writeln(nmedio);
writeln(nalto);
readln();
end.
¿Me podríais decir que es lo que pasa para que este programas no arranque?
Muchas gracias.
Es que no es válido hacer cosas como "writeln(nbajo); " si "nbajo" es un "procedure" en vez de una "function", porque los procedimientos no devuelven ningún valor.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)