
MENDOZA LICLA FRANKIE PIERRE
​
III-EE-2
​
2019
#include <iostream>
#include <math.h>
using namespace std;
//zona… de .. publicaciones
int burbuja();
int seleccion_sort();
int insercion();
int shell();
int quick_sort();
//declaracion
int Aux,i,p,q,r,N,j,A[6],B[6],C[6],
Int D[6],E[6],May[6],Men[6];
Int opcion, a,b,c,m,n,izq,der;
int Min,pos;
bool band;
int main()
{
cout<<" MENU "<<endl;
cout<<"1) burbuja"<<endl;
cout<<"2) seleccion"<<endl;
cout<<"3) insercion"<<endl;
cout<<"4) shell"<<endl;
cout<<"5) quck short"<<endl;
cout<<"selecione opcion: "<<endl;
cin>>opcion;
cout<<endl;
switch(opcion)
{
case 1:
{
//example
;
cout<<"METODO DE BURBUJAS"<<endl;
BURBUJA();
};break;
case 2:
{
//example
cout<<"METODO POR SELECCION"<<endl;
SELECCION_SORT();
};break;
case 3:
{
//example
cout<<"METODO POR INSERCION"<<endl;
INSERCION();
};break;
case 4:
{
//example
cout<<”METODO SHELL"<<endl;
SHELL();
};break;
case 5:
{
//exmaple
cout<<"METODO QUICK SORT"<<endl;
QUICK_SORT();
};break;
}
}
//FIN DEL PROGRAMA
// ZONA DE FUNCIONES
int burbuja()
{
cout<<"ESCRIBIENDO LOS ELEMENTOS "<<endl;
cout<<"Ingrese el Numero de Elementos:"; cin>>N;
for (p=1;p<=N;p++)
{
cout<<"Ingrese el Vector A["<<p<<"]=";cin>>A[p];
}
cout<<endl;
//MIRAR VECTOR
cout<<"MIRANDO LOS ELEMENTOS DEL VECTOR"<<endl;
for(q=1;q<=N;q++)
{
cout<<"El Elemento del Vector A["<<q<<"]=";cout<<A[q]<<endl;
}
cout<<endl;
for (i>0;i<=N-1;i++)//NUMERO DE REORDENAMIENTO
{
for(j=1;j<=N;j++)
{
pos=j;
Aux=A[j];
if(Aux>A[pos+1])
{
Aux=A[pos];
A[pos]=A[pos+1];
A[pos+1]=Aux;
}
else
{
A[pos] = Aux;
}
}
}
cout<<endl;
cout<<".ORDENANDO NUMEROS"<<endl;;
cout<<endl;
cout<<"completo"<<endl;
cout<<endl;
cout<<"mirar el nuevo orden"<<endl;
for(r=1;r<=N;r=r+1)
{
cout<<"EL Nuevo Orden del Vector es:"<<A[r]<<endl;
}
}
int SELECCION_SORT()
{
cout<<"escribir elementos del vector "<<endl;
cout<<"Ingrese el Numero de Elementos:";
cin>>N;
for (p=1;p<=N;p=p+1)
{
cout<<"Ingrese el Vector B["<<p<<"]=";cin>>B[p];
}
cout<<endl;
//MIRAR VECTOR
cout<<"mirar elementos del vector "<<endl;
for(q=1;q<=N;q=q+1)
{
cout<<"El Elemen o del Vector B["<<q<<"]=";cout<<B[q]<<endl;
}
cout<<endl;
for(i=0;i<=N;i++)
{
Min=i;
for(j=i+1;j<=N;j++)
{
if(B[j] < B[Min])
{
Min = j;
}
}
Aux = B[i];
B[i] = B[Min];
B[Min] = Aux;
}
cout<<endl;
cout<<"se busca minimo"<<endl; cout<<endl;
cout<<ordenar numeros."<<endl;
cout<<endl;
cout<<"fase completaq"<<endl;
cout<<endl;
for(r=1;r<=N;r=r+1)
{
cout<<"EL Nuevo Orden del Vector es:"<<B[r]<<endl;
}
}
int INSERCION()
{
cout<<"se escribe elementos "<<endl;
cout<<"Ingrese el Numero de Elementos:"; cin>>N;
for (p=1;p<=N;p++)
{
cout<<"Ingrese el Vector C["<<p<<"]=";cin>>C[p];
}
cout<<endl;
//MIRAR VECTOR
cout<<"mirar elementos"<<endl;
for(q=1;q<=N;q++)
{
cout<<"El Elemento del Vector C["<<q<<"]=";cout<<C[q]<<endl;
}
cout<<endl;
for(i=0;i<=N;i++)
{
pos = i; //posicion de Arreglo guardado en pos
Aux = C[i];//Numero de La Posicion del Arreglo Guardado en Auxiliar
while((pos>0) && (C[pos-1] > Aux))//Posicion mayora 0 y Numero de Posicion anterior mayor a Auxiliar
{
C[pos] = C[pos-1];//Numero de Posicion anterior Reemplaza Numero de Posicion Actual
pos--;//Posicion anterior igual a Posicion Actual
}
C[pos] = Aux;//Numero Auxiliar conserva el numero de Posicion Actual
}
cout<<endl;
cout<<"comparar."<<endl;;
cout<<endl;
cout<<"ordemnar."<<endl;
cout<<endl;
cout<<"fase completaq"<<endl;
cout<<endl;
for(r=1;r<=N;r++)
{
cout<<"EL Nuevo Orden del Vector es:"<<C[r]<<endl;
}
}
int SHELL()
{
cout<<"escribir elementos"<<endl;
cout<<"Ingrese el Numero de Elementos:"; cin>>N;
for (p=1;p<=N;p=p+1)
{
cout<<"Ingrese el Vector D["<<p<<"]=";cin>>D[p];
}
cout<<endl;
//MIRAR VECTOR
cout<<"mirar elementos"<<endl;
for(q=1;q<=N;q=q+1)
{
cout<<"El Elemento del Vector D["<<q<<"]=";cout<<D[q]<<endl;
}
cout<<endl;
//Error El Numero menor es reemplazado por un 0
for(i=0;i<=N;i++)
{
pos=i;
while (pos>1)
{
pos=(pos/2);
band=true;
while (band==true)
{
band=false;
j=0;
while ((j+pos)<=i)
{
if(D[j]>D[j+pos])
{
Aux=D[j];
D[j]=D[j+pos];
D[j+pos]=Aux;
band=true;
}
j++;
}
}
}
}
cout<<endl;
cout<<"comparar"<<endl;
cout<<endl;
cout<<"ordenar"<<endl;
cout<<endl;
cout<<"fase completa"<<endl;
cout<<endl;
for(r=1;r<=N;r=r+1)
{
cout<<"EL Nuevo Orden del Vector es:"<<D[r]<<endl;
}
}
int QUICK_SORT()
{
cout<<"elementos del vector"<<endl;
cout<<"Ingrese el Numero de Elementos:"; cin>>N;
//ESCRIBIR LOS NUMEROS EN EL VECTOR
for (p=1;p<=N;p=p+1)
{
cout<<"Ingrese el Vector E["<<p<<"]=";cin>>E[p];
}
cout<<endl;
//MIRAR VECTOR
cout<<"mirar elementos"<<endl;
for(q=1;q<=N;q=q+1)
{
cout<<"El Elemento del Vector E["<<q<<"]=";cout<<E[q]<<endl;
}
cout<<endl;
for(i=0;i<=N;i++)
{
a=1;
Men[a]=1;
May[a]=N;
while (a>0)
{
m=Men[a];
n= May[a];
a--;
//Inicio Reduce Iterativo
izq=m;
der=n;
pos=m;
band=true;
while(band==true)
{
while((E[pos]<=E[der]) && (pos!=der))
{
der--;
}
if(pos==der)
{
band=false;
}
else
{
Aux=E[pos];
E[pos]=E[der];
E[der]=Aux;
pos=der;
}
while((E[pos]>=E[izq]) &&(pos!=izq))
{
izq++;
}
if(pos==izq)
{
band=false;
}
else
{
Aux=E[pos];
E[pos]=E[izq];
E[izq]=Aux;
pos=izq;
}
}
//Fin de Reduce Iterativo
if (m<(pos-1))
{
a++;
Men[a]=m;
May[a]=pos-1;
}
if (n>(pos+1))
{
a++;
Men[a]=pos+1;
May[a]=n;
}
}
}
;
cout<<endl;
cout<<"comparar"<<endl; cout<<endl;
cout<<"ordenar"<<endl;
cout<<endl;
cout<<"fase completa."<<endl;
cout<<endl;
for(r=1;r<=N;r=r+1)
{
cout<<"EL Nuevo Orden del Vector es:"<<E[r]<<endl;
}
}