elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ordenación burbuja
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ordenación burbuja  (Leído 2,410 veces)
Runex

Desconectado Desconectado

Mensajes: 192


http://tutogramacion.blogspot.com


Ver Perfil WWW
Ordenación burbuja
« en: 28 Abril 2012, 01:35 am »

Buenas compañeros, estoy empezando otra vez con C++, me he acostumbrado a Python y se me está atascando  :-\.

Este es el código que llevo escrito:

Código
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. int main()
  5. {
  6. int array[10],x=0,acumulador,y=0,z=0;
  7. while (x<10)
  8. {
  9. cin>>array[x];
  10. x = x + 1;
  11. }
  12. while (y<10)
  13. {
  14. if (array[y]>array[y+1])
  15. {
  16. acumulador = array[y];
  17. array[y] = array[y+1];
  18. array[y+1] = acumulador;
  19. y = y + 1;
  20. }
  21. }
  22. while (z<10)
  23. {
  24. cout<<array[z];
  25.                z = z + 1;
  26. }
  27. return 0;
  28. }

En la primera parte, donde se introducen los 10 números para el array, a pesar de que aumento la variable de bucle, nunca para de pedir dígitos :S.

Un saludo :)


« Última modificación: 28 Abril 2012, 02:19 am por Runex » En línea

"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".
Torino10

Desconectado Desconectado

Mensajes: 56



Ver Perfil
Re: Ordenación burbuja
« Respuesta #1 en: 28 Abril 2012, 01:48 am »

Te dejo un código para el ordenamiento burbuja bien optimizado.
Revisalo :)

Código
  1.     int vec[dim], aux=0, bandera=1; //Bandera para evitar comparacion cuando ya esta ordenado
  2.  
  3.     for (int i=1; ((i<dim) && (bandera==1)); i++)
  4.         {
  5.         bandera=-1;
  6.         for (int j=0; j<(dim-i); j++)
  7.             {
  8.             if (vec[j]>vec[j+1])
  9.                {
  10.                aux=vec[j];
  11.                vec[j]=vec[j+1];
  12.                vec[j+1]=aux;
  13.                bandera=1;
  14.                }
  15.             }
  16.         }


En línea

"Tanto si crees que puedes, como si crees que no puedes, estas en lo correcto"
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
ordenacion burbuja
.NET (C#, VB.NET, ASP)
S1dD3xt35 6 4,711 Último mensaje 21 Marzo 2010, 01:09 am
por S1dD3xt35
Método Burbuja
Programación C/C++
Lain0x 3 4,999 Último mensaje 1 Mayo 2011, 21:41 pm
por Lain0x
Ordenación: método de la burbuja
Programación General
mvk 5 3,079 Último mensaje 13 Noviembre 2012, 00:08 am
por mvk
Esta vez no estamos ante una burbuja tecnológica, EEUU es una burbuja « 1 2 3 »
Foro Libre
dimitrix 23 9,277 Último mensaje 7 Marzo 2015, 17:04 pm
por dimitrix
Ordenación método de la burbuja
Programación C/C++
neveldine 3 2,531 Último mensaje 9 Diciembre 2015, 23:04 pm
por neveldine
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines