Pascal/Turbo Pascal - arrays nuevamente xD

 
Vista:

arrays nuevamente xD

Publicado por alexsan623 (3 intervenciones) el 06/02/2011 04:26:36
buenas ahora tengo el siguiente problema :(
Dado un vector de 15 valores hacer un programa q pueda obtener y sacar por pantalla
*el mayor de los valore
*el menor de los valores
*el mas proximo

hasta ahora e podido resolver los dos primeros problemas pero con el mas proximo no se me ocurre nada si puediran ayudarme lo agradezco, aqui les dejo lo q tengo hasta ahora

program problema2;
uses crt;

const
m=15;
n=14;

type
arreglo=array[1..m]of integer;

var
lista:arreglo;
auxiliar:arreglo;
suma,aux1,aux2,medio:integer;
promedio:real;
i,k:integer;

procedure inicializar;
begin
for i:=1 to m do
lista[i]:=0;
end;

procedure carga;
begin
for i:=1 to m do
begin
writeln('ingrese el valor',i);
readln(lista[i]);
end;
end;

procedure ordenar_vector;
begin
aux1:=0;
for i:=1 to m do
begin
for k:=m downto i do

if lista[k-1]>lista[k] then
begin
aux1:= lista[k-1];
lista[k-1]:=lista[k];
lista[k]:=aux1;
end;
end;
end;

procedure valor_mayor;
begin
clrscr;
writeln;
writeln('el numero mayor es');
writeln(lista[m]);
end;

procedure valor_menor;
begin
writeln;
writeln('el numero menor es');
writeln(lista[1]);
end;


begin
inicializar;
carga;
ordenar_vector;
valor_mayor;
valor_menor;
readln
end.
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

RE:arrays nuevamente xD

Publicado por ramon (2158 intervenciones) el 15/02/2011 14:07:56
program problema2;
uses crt;

const
m=15;
n=14;

type
arreglo=array[1..m]of integer;

var
lista:arreglo;
auxiliar:arreglo;
suma,aux1,aux2,medio:integer;
promedio:real;
i,k:integer;

procedure inicializar;
begin
for i:=1 to m do
lista[i]:=0;
end;

procedure carga;
begin
for i:=1 to m do
begin
writeln('ingrese el valor',i);
readln(lista[i]);
end;
end;

procedure ordenar_vector;
begin
aux1:=0;
for i := 1 to m do
begin
for k := m downto i do
if lista[k - 1] > lista[k] then {se sale de ramgo en k = 1 pues
k = 0 no existe}
begin
aux1 := lista[k-1];
lista[k - 1] := lista[k];
lista[k] := aux1;
end;
end;
end;

procedure valor_mayor;
begin
clrscr;
writeln;
writeln('el numero mayor es');
writeln(lista[m]);
end;

procedure valor_menor;
begin
writeln;
writeln('el numero menor es');
writeln(lista[1]);
end;

begin
inicializar;
carga;
ordenar_vector;
valor_mayor;
valor_menor;
{si para menor y mayor encuentras lista[1] y lista[m] para los mas}
{prosimos seria lista[2] y lista[m - 1]}
{pero antes corrije el erros que tienes en ordenar}
{espero sea loque quieres}
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