SlideShare una empresa de Scribd logo
1 de 23
Su Caracteristica principal es intercambio de pares de elementos
adyecentes.

Los Parametros Necesarios:
Lista(el array que contiene la lista de elementos a ordenar.
Numero de elementos que queremos ordenar.


Para el Procedimiento se necesita algunas variables, como por ejemplo:
nt: se indicara el numero de pasada.
i: indice para recorrer el array.
cam: para realizar el intercambio de los elementos del array
for nt := 1 to 4 do {Ciclo para hacer los pases, que tiene almacenado en el array, ciclo para la salidas de arregle}
 begin
  for i:=nt+1 to 4 do {Ciclo para hacer los cambios, ahora i tiene el valor de segundo de array}
   begin
    if nota[nt] > nota[i] then {de acuerdo al numero de ciclo nt con el array es mayor que el segundo dato del
arregle del ciclo nt+1, entoces, hacen esta condicion o no}
      begin
        cam:=nota[nt];{En la variable cabio almacena el valor de array del del numero del ciclo nt}
        nota[nt]:=nota[i];{Ahora el dato del array ciclo nt tiene el valor de la seguiente que el nt+1}
        nota[i]:= cam;{Al al segundo dato del array ponemos el primer dato que habia alma
       cenado en la variable cam}
     end;
   end;
Program notaprogra;
Uses wincrt;
Type
notas=array [1..4] of integer;{Arreglo de lista}
var
nota:notas;{Variables para almacenar datos con arreglo}
nt,i,cam:integer;{Variables para los ciclo y cambios}
Begin
For nt:=1 to 4 do{Cliclo para almacenar datos}
 begin
 Write('Ingrese La Nota:');
 Readln(nota[nt]);{Ingresando los datos con siclo repetitivo, con el arreglo}
end;
clrscr;{Limpiamos la pantalla para mostrar los datos almacenados}
For nt:=1 to 4 do{Ciclo para mostrar los datos almacenados}
 Writeln('Nota',nt,':',nota[nt]);{Mostrando datos almacenados en orden al
ciclo, con arreglo}
Clrscr; {Limpiando la Pantalla para Mostrar los datos ordenados}
writeln('');
writeln('LA ORDEN ASCENDENTE DE LOS DATOS');
writeln('__________________________________________________');
for nt := 1 to 4 do{Ciclo para hacer los pases, que tiene almacenado en el array, ciclo
para la salidas}
 begin
  for i:=nt+1 to 4 do{Ciclo para hacer los cambios, ahora i tiene el valor de segundo
  de array}
    begin
     if nota[nt] > nota[i] then {de acuerdo al numero de ciclo nt con el array es mayor
     que el segundo dato del arregle del ciclo nt+1, entoces, hacen esta condicion o no}
       begin
        cam:=nota[nt];{En la variable cabio almacena el valor de array del del numero del
        ciclo nt}
        nota[nt]:=nota[i];{Ahora el dato del array ciclo nt tiene el valor de la seguiente
        que el nt+1}
        nota[i]:= cam;{Al al segundo dato del array ponemos el primer dato que habia alma
        cenado en la variable cam}
       end
    end;
 writeln('Nota: ',nota[nt]){todavia estando dentro del ciclo nt damos la salida de datos,
 array, con el orden del ciclo va escribiendo}
 end;
End.
Un ciclo de pases para datos almacenados con array.

Un ciclo de cuatro para cambio s

Intercabio de elementos en cada ciclo de cambios si es necesario y en
cada ciclo de pase tiene su ciclo de cambio.

En cada ciclo de cambio tiene dos elementos para cambio si es necesario

Los Elementos, por Ejemplo:
nota[nt]
nota [i]=nota[nt+1]

Una vez termina el Ciclo de Cambio regresa a ciclo de pases y entra otra
vez al ciclo de cambio con la misma orden de ciclo, al terminar el ciclo
de pases termina ordenada los datos de array.
for i:=nt+1 to 4 do
    begin
      if nota[nt] > nota[i] then
          begin
            cam:=nota[nt];
            nota[nt]:=nota[i];
            nota[i]:= cam;
        end
    end;


                             nota[nt]      nota[i]




                               1             2         3   4




          nota[nt]                      nota[i]=nt+1           cam
for i:=nt+1 to 4 do
    begin
      if nota[nt] > nota[i] then
          begin
            cam:=nota[nt];
            nota[nt]:=nota[i];
            nota[i]:= cam;
        end
    end;


                                     nota[nt]   nota[i]



                               1        2            3    4




          nota[nt]                 nota[i]=nt+1               cam
for i:=nt+1 to 4 do
 begin
  if nota[nt] > nota[i] then
      begin
        cam:=nota[nt];
        nota[nt]:=nota[i];
        nota[i]:= cam;
    end
 end;

                                          nota[nt]   nota[i]



                           1       2          3        4




       nota[nt]                nota[i]=nt+1                    cam
El Ciclo de Pases Continua
En cada Ciclo pase Tiene Su Ciclo de Cambios
for i:=nt+1 to 4 do
    begin
      if nota[nt] > nota[i] then
          begin
            cam:=nota[nt];
            nota[nt]:=nota[i];
            nota[i]:= cam;
        end
    end;


                            nota[nt]     nota[i]



                               1            2         3   4




          nota[nt]                     nota[i]=nt+1           cam
for i:=nt+1 to 4 do
    begin
      if nota[nt] > nota[i] then
          begin
            cam:=nota[nt];
            nota[nt]:=nota[i];
            nota[i]:= cam;
        end
    end;


                                     nota[nt]   nota[i]



                               1        2            3    4




          nota[nt]                 nota[i]=nt+1               cam
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                                             nota[nt]   nota[i]



                              1       2          3        4




          nota[nt]                nota[i]=nt+1                    cam
El Ciclo de pase Continua hasta terminar su la Orden
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                            nota[nt]      nota[i]



                              1             2         3   4




          nota[nt]                     nota[i]=nt+1           cam
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                                     nota[nt]   nota[i]



                              1        2           3      4




          nota[nt]                nota[i]=nt+1                cam
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                                             nota[nt]   nota[i]



                              1       2          3        4




          nota[nt]                nota[i]=nt+1                    cam
Parece que no es necesario continuar con el ordenamiento
pero es por los datos, si los datos es mas my mucho mas
variados los ciclos de ordenamiento es necesario suficiente
como esta el orden del cilclo para repetir.

Continuamos con el Ciclo de pases.
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                            nota[nt]      nota[i]



                              1             2         3   4




          nota[nt]                     nota[i]=nt+1           cam
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                                     nota[nt]   nota[i]



                              1        2           3      4




          nota[nt]                nota[i]=nt+1                cam
for i:=nt+1 to 4 do
    begin
     if nota[nt] > nota[i] then
         begin
           cam:=nota[nt];
           nota[nt]:=nota[i];
           nota[i]:= cam;
       end
   end;

                                             nota[nt]   nota[i]



                              1       2          3        4




          nota[nt]                nota[i]=nt+1                    cam
1   2   3   4

Más contenido relacionado

La actualidad más candente

La actualidad más candente (17)

Analisis de algoritmos
Analisis de algoritmosAnalisis de algoritmos
Analisis de algoritmos
 
Funciones periodicas
Funciones periodicasFunciones periodicas
Funciones periodicas
 
Funciones periódicas
Funciones periódicasFunciones periódicas
Funciones periódicas
 
Utp pds_l5_transformada discreta de fourier_
 Utp pds_l5_transformada discreta de fourier_ Utp pds_l5_transformada discreta de fourier_
Utp pds_l5_transformada discreta de fourier_
 
Sa fourier con matlab
Sa fourier con matlabSa fourier con matlab
Sa fourier con matlab
 
Series de fodsfjwslurier
Series de fodsfjwslurierSeries de fodsfjwslurier
Series de fodsfjwslurier
 
Infijo A Postfijo
Infijo A PostfijoInfijo A Postfijo
Infijo A Postfijo
 
Transformada de Fourier. Presentación por Ing Ana María Ugartemendía
Transformada de Fourier. Presentación  por Ing Ana María UgartemendíaTransformada de Fourier. Presentación  por Ing Ana María Ugartemendía
Transformada de Fourier. Presentación por Ing Ana María Ugartemendía
 
Transformada De Fourier
Transformada De FourierTransformada De Fourier
Transformada De Fourier
 
SERIES DE FOURIER
SERIES DE FOURIERSERIES DE FOURIER
SERIES DE FOURIER
 
Serie de Fourier
Serie de FourierSerie de Fourier
Serie de Fourier
 
C3 rm sucesiones literales - 4º
C3 rm   sucesiones literales - 4ºC3 rm   sucesiones literales - 4º
C3 rm sucesiones literales - 4º
 
cifra flujo
 cifra flujo cifra flujo
cifra flujo
 
Tema4
Tema4Tema4
Tema4
 
Trabajo fourier
Trabajo fourierTrabajo fourier
Trabajo fourier
 
Tema6 t fourier
Tema6 t fourierTema6 t fourier
Tema6 t fourier
 
Series fourier
Series fourierSeries fourier
Series fourier
 

ORDENAMIENTO-ARRAY-INTERCAMBIO

  • 1. Su Caracteristica principal es intercambio de pares de elementos adyecentes. Los Parametros Necesarios: Lista(el array que contiene la lista de elementos a ordenar. Numero de elementos que queremos ordenar. Para el Procedimiento se necesita algunas variables, como por ejemplo: nt: se indicara el numero de pasada. i: indice para recorrer el array. cam: para realizar el intercambio de los elementos del array
  • 2. for nt := 1 to 4 do {Ciclo para hacer los pases, que tiene almacenado en el array, ciclo para la salidas de arregle} begin for i:=nt+1 to 4 do {Ciclo para hacer los cambios, ahora i tiene el valor de segundo de array} begin if nota[nt] > nota[i] then {de acuerdo al numero de ciclo nt con el array es mayor que el segundo dato del arregle del ciclo nt+1, entoces, hacen esta condicion o no} begin cam:=nota[nt];{En la variable cabio almacena el valor de array del del numero del ciclo nt} nota[nt]:=nota[i];{Ahora el dato del array ciclo nt tiene el valor de la seguiente que el nt+1} nota[i]:= cam;{Al al segundo dato del array ponemos el primer dato que habia alma cenado en la variable cam} end; end;
  • 3. Program notaprogra; Uses wincrt; Type notas=array [1..4] of integer;{Arreglo de lista} var nota:notas;{Variables para almacenar datos con arreglo} nt,i,cam:integer;{Variables para los ciclo y cambios} Begin For nt:=1 to 4 do{Cliclo para almacenar datos} begin Write('Ingrese La Nota:'); Readln(nota[nt]);{Ingresando los datos con siclo repetitivo, con el arreglo} end; clrscr;{Limpiamos la pantalla para mostrar los datos almacenados} For nt:=1 to 4 do{Ciclo para mostrar los datos almacenados} Writeln('Nota',nt,':',nota[nt]);{Mostrando datos almacenados en orden al ciclo, con arreglo} Clrscr; {Limpiando la Pantalla para Mostrar los datos ordenados} writeln(''); writeln('LA ORDEN ASCENDENTE DE LOS DATOS');
  • 4. writeln('__________________________________________________'); for nt := 1 to 4 do{Ciclo para hacer los pases, que tiene almacenado en el array, ciclo para la salidas} begin for i:=nt+1 to 4 do{Ciclo para hacer los cambios, ahora i tiene el valor de segundo de array} begin if nota[nt] > nota[i] then {de acuerdo al numero de ciclo nt con el array es mayor que el segundo dato del arregle del ciclo nt+1, entoces, hacen esta condicion o no} begin cam:=nota[nt];{En la variable cabio almacena el valor de array del del numero del ciclo nt} nota[nt]:=nota[i];{Ahora el dato del array ciclo nt tiene el valor de la seguiente que el nt+1} nota[i]:= cam;{Al al segundo dato del array ponemos el primer dato que habia alma cenado en la variable cam} end end; writeln('Nota: ',nota[nt]){todavia estando dentro del ciclo nt damos la salida de datos, array, con el orden del ciclo va escribiendo} end; End.
  • 5. Un ciclo de pases para datos almacenados con array. Un ciclo de cuatro para cambio s Intercabio de elementos en cada ciclo de cambios si es necesario y en cada ciclo de pase tiene su ciclo de cambio. En cada ciclo de cambio tiene dos elementos para cambio si es necesario Los Elementos, por Ejemplo: nota[nt] nota [i]=nota[nt+1] Una vez termina el Ciclo de Cambio regresa a ciclo de pases y entra otra vez al ciclo de cambio con la misma orden de ciclo, al terminar el ciclo de pases termina ordenada los datos de array.
  • 6. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 7. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 8. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 9. El Ciclo de Pases Continua En cada Ciclo pase Tiene Su Ciclo de Cambios
  • 10. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 11. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 12. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 13. El Ciclo de pase Continua hasta terminar su la Orden
  • 14. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 15. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 16. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 17. Parece que no es necesario continuar con el ordenamiento pero es por los datos, si los datos es mas my mucho mas variados los ciclos de ordenamiento es necesario suficiente como esta el orden del cilclo para repetir. Continuamos con el Ciclo de pases.
  • 18. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 19. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 20. for i:=nt+1 to 4 do begin if nota[nt] > nota[i] then begin cam:=nota[nt]; nota[nt]:=nota[i]; nota[i]:= cam; end end; nota[nt] nota[i] 1 2 3 4 nota[nt] nota[i]=nt+1 cam
  • 21.
  • 22.
  • 23. 1 2 3 4