Descargar

Ordenamiento de arreglos por el método de la burbuja simple, burbuja doble y burbuja triple (página 2)

Enviado por jaimemontoya


Partes: 1, 2

ORDENAMIENTO BURBUJA DOBLE

void CordenamientoburbujaDlg::OnBnClickedButton2()

{

// TODO: Agregue aquí su código de controlador de notificación de control

#define TAMANIO 10

int vector[TAMANIO]={4,5,3,9,2,3,1,4,8,6};

int pasadas,elemento,almacena;

UpdateData(TRUE);

m_a1=vector[0];

m_a2=vector[1];

m_a3=vector[2];

m_a4=vector[3];

m_a5=vector[4];

m_a6=vector[5];

m_a7=vector[6];

m_a8=vector[7];

m_a9=vector[8];

m_a10=vector[9];

UpdateData(FALSE);

for (pasadas=1;pasadas<TAMANIO/2;pasadas++){

for(elemento=0;elemento<TAMANIO-1;elemento++){

if(vector[elemento]>vector[elemento+1]){

almacena=vector[elemento];

vector[elemento]=vector[elemento+1];

vector[elemento+1]=almacena;

}

if(vector[TAMANIO-(elemento+1)]<vector[TAMANIO-(elemento+2)]){

almacena=vector[TAMANIO-(elemento+1)];

vector[TAMANIO-(elemento+1)]=vector[TAMANIO-(elemento+2)];

vector[TAMANIO-(elemento+2)]=almacena;

}

}

}

UpdateData(TRUE);

m_b1=vector[0];

m_b2=vector[1];

m_b3=vector[2];

m_b4=vector[3];

m_b5=vector[4];

m_b6=vector[5];

m_b7=vector[6];

m_b8=vector[7];

m_b9=vector[8];

m_b10=vector[9];

UpdateData(FALSE);

}

ORDENAMIENTO BURBUJA TRIPLE

void CordenamientoburbujaDlg::OnBnClickedButton3()

{

// TODO: Agregue aquí su código de controlador de notificación de control

#define TAMANIO 11

int vector[TAMANIO]={4,5,3,9,2,3,1,4,8,6};

int pasadas,elemento,menor,medio,mayor;

UpdateData(TRUE);

m_a1=vector[0];

m_a2=vector[1];

m_a3=vector[2];

m_a4=vector[3];

m_a5=vector[4];

m_a6=vector[5];

m_a7=vector[6];

m_a8=vector[7];

m_a9=vector[8];

m_a10=vector[9];

UpdateData(FALSE);

for(pasadas=1;pasadas<TAMANIO/2;pasadas++){

for(elemento=0;elemento<(TAMANIO-1)-(pasadas*2);elemento++){

if((vector[elemento]<vector[elemento+1]) && (vector[elemento]<vector[elemento+2])){//Si el primer número es el mayor de los 3.

menor=vector[elemento];

if(vector[elemento+1]<vector[elemento+2]){

medio=vector[elemento+1];

mayor=vector[elemento+2];

}

else{

medio=vector[elemento+2];

mayor=vector[elemento+1];

}

}

if((vector[elemento+1]<vector[elemento]) && (vector[elemento+1]<vector[elemento+2])){//Si el segundo número es el mayor de los 3.

menor=vector[elemento+1];

if(vector[elemento]<vector[elemento+2]){

medio=vector[elemento];

mayor=vector[elemento+2];

}

else{

medio=vector[elemento+2];

mayor=vector[elemento];

}

}

if((vector[elemento+2]<vector[elemento]) && (vector[elemento+2]<vector[elemento+1])){//Si el tercer número es el mayor de los 3.

menor=vector[elemento+2];

if(vector[elemento]<vector[elemento+1]){

medio=vector[elemento];

mayor=vector[elemento+1];

}

else{

medio=vector[elemento+1];

mayor=vector[elemento];

}

}

if((vector[elemento]==vector[elemento+1]) && (vector[elemento]==vector[elemento+2])){//Caso de 1,1,1 (tres iguales).

menor=vector[elemento];

medio=vector[elemento+1];

mayor=vector[elemento+2];

}

if((vector[elemento]==vector[elemento+1]) && (vector[elemento+2]>vector[elemento])){//Caso de 1,1,2 (dos primeros iguales y tercero mayor).

menor=vector[elemento];

medio=vector[elemento+1];

mayor=vector[elemento+2];

}

if((vector[elemento]==vector[elemento+2]) && (vector[elemento+1]>vector[elemento])){//Caso de 1,2,1 (primero y tercero iguales y segundo mayor).

menor=vector[elemento];

medio=vector[elemento+2];

mayor=vector[elemento+1];

}

if((vector[elemento+1]==vector[elemento+2]) && (vector[elemento]>vector[elemento+1])){//Caso de 2,1,1 (segundo y tercero iguales y primero mayor).

menor=vector[elemento+1];

medio=vector[elemento+2];

mayor=vector[elemento];

}

vector[elemento]=menor;

vector[elemento+1]=medio;

vector[elemento+2]=mayor;

}

}

UpdateData(TRUE);

m_b1=vector[0];

m_b2=vector[1];

m_b3=vector[2];

m_b4=vector[3];

m_b5=vector[4];

m_b6=vector[5];

m_b7=vector[6];

m_b8=vector[7];

m_b9=vector[8];

m_b10=vector[9];

UpdateData(FALSE);

}

 

 

 

Autor:

Jaime Oswaldo Montoya Guzmán,

Estudiante de 3er. año de Ingeniería en Sistemas Informáticos de la Universidad Católica de Occidente (UNICO).

Santa Ana, 5 de marzo de 2007

El Salvador

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente