metodo de la burbuja
porfavor alguien me puede dar informacion referente sobre el metodo de la burbuja
NESECITO UN PROGRAMA CON EL METODO DE LA BURBUJA QUE ORDENE EL MAYOR ENMEDIO Y LOS MENORES A LOS LADOS POR EJEMPLO
125037869
1357986420
Asi deberia de quedar por favor diganme como se hace.. por favor ='( lo nesecito para mañana ='( buaaaaaaaaaaaaaaa es tarea para mi calificacion y no se nada POR FAVOR MANDENME EL CODIGO GRACIAS DE ANTEMANO
125037869
1357986420
Asi deberia de quedar por favor diganme como se hace.. por favor ='( lo nesecito para mañana ='( buaaaaaaaaaaaaaaa es tarea para mi calificacion y no se nada POR FAVOR MANDENME EL CODIGO GRACIAS DE ANTEMANO
AHI TE MANDO UN CODIGO EN CUAL PODRAS SABER LO QUE NECESITAS CON RESPECTO A LA BURBUJA. SI NECESITAS AYUDA CON ALGO SOBRE ESTE TEMA, ESCRIBAME.
#include<iostream.h>
#include<conio.h>
//*********************************************
//prototipos
//*********************************************
void leer_vector(int v[], int&n);
void mostrar_vector(int v[], int&n);
void leer_matriz(int m[][6],int&nf,int&nc);
void mostrar_matriz(int m[][6],int&nf,int&nc);
void ordenburbuja(int &n,int v[]);
void caritas();
void presione();
//*********************************************
//funcion sumav:suma los valores de un vector
//*********************************************
int sumav(int v[],int&n)
{
int i, acusuma;
acusuma=0;
for(i=1;i<=n;i++)
{
acusuma=acusuma+v[i];
}
return acusuma;
}
//*****************************
//procedimiento: leer vector
//*****************************
void leer_vector (int v[],int&n)
{
clrscr();
caritas();
int i;
cout<<endl<<endl<<endl<<"n entrar tama¤o del vector: ";
cin>>n;
for (i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
cout<<endl;
}
}
//***********************************************
//procedimiento: mostrar vector
//***********************************************
void mostrar_vector(int v[], int&n)
{
int i;
cout<<"vector v leido: "<<endl;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]="<<v[i]<<endl;
}
}
//****************************************************
//funcion sumam: Suma los componentes de una matriz
//****************************************************
int sumam(int m[][6],int&nf,int&nc)
{
int i,j,asuma;
asuma=0;
for (i=1;i<=nf;i++)
{
for (j=1;j<=nc;j++)
{
asuma=asuma+m[i][j];
}
}
return asuma;
}
//*******************************************
//procedimiento leer matriz
//*******************************************
void leer_matriz(int m[][6],int&nf, int&nc)
{
int i,j,columna;
cout<<"entrar numero de filas-> ";
cin>>nf;
cout<<"entrar numero de columnas-> ";
cin>>nc;
cout<<endl<<endl<<"Entrar uno a uno los elementos de la matriz: ";
cout<<endl;
for(i=1;i<=nf;i++)
{
columna=10;
for(j=1;j<=nc;j++)
{
gotoxy(columna,i+15);
cin>>m[i][j];
columna=columna+5;
}
}
}
//********************************************
//procedimiento mostrar matriz
//********************************************
void mostrar_matriz(int m[][6],int&nf,int&nc)
{
int i,j,columna;
for (i=1;i<=nf;i++)
{
columna=20;
for(j=1;j<=nc;j++)
{
gotoxy(columna,i+13);
cout<<m[i][j];
columna=columna+5;
}
gotoxy(10,10);
cout<<"LA MATRIZ LEIDA ES:";
}
}
//*************************************************
//procedimiento de orden por seleccion
//*************************************************
void ordenburbuja(int &n,int v[])
{
int i,j,aux;
for (i=1;i<=(n-1);i++)
{
for (j=1;j<=n-1;j++)
{
if(v[j]>v[j+1])
{
aux=v[j];
v[j]=v[j+1];
v[j+1]=aux;
}
}
}
}
/*****************************************************
Procedimiento----->Caritas.
/****************************************************/
void caritas()
{
cout<<" Juan _\|///_ _\|///_ Ramiro "<<endl;
cout<<" (` o-o ï) (` o-o ï) " <<endl;
cout<<" --ooO-(_)-Ooo-- --ooO-(_)-Ooo-- "<<endl;
}
/*****************************************************
Procedimiento----->Presione una tecla para continuar.
*****************************************************/
void presione()
{
gotoxy(3,25);
cout<<"PRESIONE CUALQUIER TECLA PARA CONTINUAR...";
getch();
}
//******************************************
//algoritmo principal
//******************************************
void main()
{
int opc;
textbackground(15);textcolor(0);clrscr();
int v[50],n,resulsuma;
int m[6][6],nf,nc,suma;
clrscr();
do
{
clrscr();
caritas();
cout<<endl<<endl<<endl<<endl<<"ttMenu de opciones"<<endl;
cout<<"tt================";
cout<<"n1) Crear un vector nuevo.";
cout<<"n2) Mostrar la suma de los elementos del vector.";
cout<<"n3) Mostrar el vector leido.";
cout<<"n4) Crar una matriz.";
cout<<"n5) Mostrar la suma de los elementos del vector.";
cout<<"n6) Mostrar la matriz leida.";
cout<<"n7) Ordenar el vector ascendentemente.";
cout<<"n8) Inserta un elemento al vector.";
cout<<"n9) Borra un elemento del vector.";
cout<<"n100) Salir de la apliccion.";
cout<<endl<<endl<<"nSeleccione una opcion:";cin>>opc;
switch(opc)
{
case 1: leer_vector(v,n);presione();break;
case 2: clrscr();caritas();cout<<endl;resulsuma=sumav(v,n);
gotoxy(23,14);cout<<"suma de los valores del vector:";
cout<<resulsuma;
presione();break;
case 3: clrscr();caritas();gotoxy(10,10);mostrar_vector(v,n);
presione();break;
case 4: clrscr();caritas();cout<<endl<<endl<<endl<<endl;
leer_matriz(m,nf,nc);presione();break;
case 5: clrscr();caritas();suma=sumam(m,nf,nc);gotoxy(15,14);
cout<<"la suma de los valores de la matriz es:"<<suma<<endl;
presione();break;
case 6: clrscr();caritas();mostrar_matriz (m,nf,nc);presione();break;
case 7: clrscr();caritas();gotoxy(5,10);cout<<"VECTOR ORDENADO.";
ordenburbuja(n,v);presione();break;
}
}
while(opc!=100);
clrscr(); caritas();
cout<<"nPrograma Elaborado por:";
cout<<endl<<endl<<endl<<"Juan Esteban Ospina Herera y Ramiro Antonio Montoya Tabares.";
getch();
}
#include<iostream.h>
#include<conio.h>
//*********************************************
//prototipos
//*********************************************
void leer_vector(int v[], int&n);
void mostrar_vector(int v[], int&n);
void leer_matriz(int m[][6],int&nf,int&nc);
void mostrar_matriz(int m[][6],int&nf,int&nc);
void ordenburbuja(int &n,int v[]);
void caritas();
void presione();
//*********************************************
//funcion sumav:suma los valores de un vector
//*********************************************
int sumav(int v[],int&n)
{
int i, acusuma;
acusuma=0;
for(i=1;i<=n;i++)
{
acusuma=acusuma+v[i];
}
return acusuma;
}
//*****************************
//procedimiento: leer vector
//*****************************
void leer_vector (int v[],int&n)
{
clrscr();
caritas();
int i;
cout<<endl<<endl<<endl<<"n entrar tama¤o del vector: ";
cin>>n;
for (i=1;i<=n;i++)
{
cout<<"v["<<i<<"]=";
cin>>v[i];
cout<<endl;
}
}
//***********************************************
//procedimiento: mostrar vector
//***********************************************
void mostrar_vector(int v[], int&n)
{
int i;
cout<<"vector v leido: "<<endl;
for(i=1;i<=n;i++)
{
cout<<"v["<<i<<"]="<<v[i]<<endl;
}
}
//****************************************************
//funcion sumam: Suma los componentes de una matriz
//****************************************************
int sumam(int m[][6],int&nf,int&nc)
{
int i,j,asuma;
asuma=0;
for (i=1;i<=nf;i++)
{
for (j=1;j<=nc;j++)
{
asuma=asuma+m[i][j];
}
}
return asuma;
}
//*******************************************
//procedimiento leer matriz
//*******************************************
void leer_matriz(int m[][6],int&nf, int&nc)
{
int i,j,columna;
cout<<"entrar numero de filas-> ";
cin>>nf;
cout<<"entrar numero de columnas-> ";
cin>>nc;
cout<<endl<<endl<<"Entrar uno a uno los elementos de la matriz: ";
cout<<endl;
for(i=1;i<=nf;i++)
{
columna=10;
for(j=1;j<=nc;j++)
{
gotoxy(columna,i+15);
cin>>m[i][j];
columna=columna+5;
}
}
}
//********************************************
//procedimiento mostrar matriz
//********************************************
void mostrar_matriz(int m[][6],int&nf,int&nc)
{
int i,j,columna;
for (i=1;i<=nf;i++)
{
columna=20;
for(j=1;j<=nc;j++)
{
gotoxy(columna,i+13);
cout<<m[i][j];
columna=columna+5;
}
gotoxy(10,10);
cout<<"LA MATRIZ LEIDA ES:";
}
}
//*************************************************
//procedimiento de orden por seleccion
//*************************************************
void ordenburbuja(int &n,int v[])
{
int i,j,aux;
for (i=1;i<=(n-1);i++)
{
for (j=1;j<=n-1;j++)
{
if(v[j]>v[j+1])
{
aux=v[j];
v[j]=v[j+1];
v[j+1]=aux;
}
}
}
}
/*****************************************************
Procedimiento----->Caritas.
/****************************************************/
void caritas()
{
cout<<" Juan _\|///_ _\|///_ Ramiro "<<endl;
cout<<" (` o-o ï) (` o-o ï) " <<endl;
cout<<" --ooO-(_)-Ooo-- --ooO-(_)-Ooo-- "<<endl;
}
/*****************************************************
Procedimiento----->Presione una tecla para continuar.
*****************************************************/
void presione()
{
gotoxy(3,25);
cout<<"PRESIONE CUALQUIER TECLA PARA CONTINUAR...";
getch();
}
//******************************************
//algoritmo principal
//******************************************
void main()
{
int opc;
textbackground(15);textcolor(0);clrscr();
int v[50],n,resulsuma;
int m[6][6],nf,nc,suma;
clrscr();
do
{
clrscr();
caritas();
cout<<endl<<endl<<endl<<endl<<"ttMenu de opciones"<<endl;
cout<<"tt================";
cout<<"n1) Crear un vector nuevo.";
cout<<"n2) Mostrar la suma de los elementos del vector.";
cout<<"n3) Mostrar el vector leido.";
cout<<"n4) Crar una matriz.";
cout<<"n5) Mostrar la suma de los elementos del vector.";
cout<<"n6) Mostrar la matriz leida.";
cout<<"n7) Ordenar el vector ascendentemente.";
cout<<"n8) Inserta un elemento al vector.";
cout<<"n9) Borra un elemento del vector.";
cout<<"n100) Salir de la apliccion.";
cout<<endl<<endl<<"nSeleccione una opcion:";cin>>opc;
switch(opc)
{
case 1: leer_vector(v,n);presione();break;
case 2: clrscr();caritas();cout<<endl;resulsuma=sumav(v,n);
gotoxy(23,14);cout<<"suma de los valores del vector:";
cout<<resulsuma;
presione();break;
case 3: clrscr();caritas();gotoxy(10,10);mostrar_vector(v,n);
presione();break;
case 4: clrscr();caritas();cout<<endl<<endl<<endl<<endl;
leer_matriz(m,nf,nc);presione();break;
case 5: clrscr();caritas();suma=sumam(m,nf,nc);gotoxy(15,14);
cout<<"la suma de los valores de la matriz es:"<<suma<<endl;
presione();break;
case 6: clrscr();caritas();mostrar_matriz (m,nf,nc);presione();break;
case 7: clrscr();caritas();gotoxy(5,10);cout<<"VECTOR ORDENADO.";
ordenburbuja(n,v);presione();break;
}
}
while(opc!=100);
clrscr(); caritas();
cout<<"nPrograma Elaborado por:";
cout<<endl<<endl<<endl<<"Juan Esteban Ospina Herera y Ramiro Antonio Montoya Tabares.";
getch();
}
el metodo de la bubuja o burbujeo, es un metodo de ordenamiento repetitivo que, como el nombre lo dice, reordena "burbujeando" los datos. Como las burbujas suben en el liquido.
el pseudocódigo para el burbujeo en un vecto o array es:
mientras no termino hacer
{
termino=true;
para i=1 hasta tamaño-1 hacer
{
si a[i] > a[i+1] entonces
{
auxiliar=a[i];
a[i]= a[i+1];
a[i+1] = auxiliar;
termino=false;
}//finsi
}//finpara
}//finmientras
Si tenes mas dudas, mandame un e-mail.
el pseudocódigo para el burbujeo en un vecto o array es:
mientras no termino hacer
{
termino=true;
para i=1 hasta tamaño-1 hacer
{
si a[i] > a[i+1] entonces
{
auxiliar=a[i];
a[i]= a[i+1];
a[i+1] = auxiliar;
termino=false;
}//finsi
}//finpara
}//finmientras
Si tenes mas dudas, mandame un e-mail.
