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

 

 


Tema destacado: Curso de javascript por TickTack


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [ayuda][c++]ordenar arreglo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [ayuda][c++]ordenar arreglo  (Leído 3,708 veces)
dragon_hack

Desconectado Desconectado

Mensajes: 9



Ver Perfil WWW
[ayuda][c++]ordenar arreglo
« en: 30 Julio 2010, 16:28 pm »

tengo un problema grande al no entender la estrutura del metodo de ordenamiento "burbuja" me podrian ayudar en algo? vean el arreglo que trato de ordenar.

Código:
#include <iostream>
 using namespace std;
int main()
{
    const int tama = 10;
int a[tama] = {5,50,20,10,10,8,3,2,6,1};
//imprimos el arreglo con los valores iniciales
cout<<"arreglo antes de ordenar......"<<endl;
cout<<endl;
cout<<endl;
for (int j =0; j <tama; j++)
cout<< j << a[j] <<endl;


cout<<endl;
cout<<endl;
cout<<"arreglo despues de ordenar..........."<<endl;
cout<<endl;
cout<<endl;

for (int i = 1; i <tama; i++ ){
for (j = 0; j <tama - i ; j++){

if ( a[j]> a[j + 1]) {

temp = a[j];
a[j] = a[j + 1] ;
a[j + 1] = temp;
}
}
}

for (j =0; j <tama; j++) {
cout<< j << a[ j ] <<endl;
}
//pausamos despues de que muestre el resultado el programa
system("pause");
return 0;
} //fin del programa


En línea


Tutorial 1 100%
Tutorial 2 56%
Tutorial 3 23%
N3r0

Desconectado Desconectado

Mensajes: 38



Ver Perfil
Re: [ayuda][c++]ordenar arreglo
« Respuesta #1 en: 31 Julio 2010, 00:15 am »

Hola como estas mira tenes dos problemas por empezar en el ordenamiento utilizas una variable llamada temp que  no declaras en ningun lado y segundo en el for
Código
  1. for (j = 0; j <tama - i ; j++)
  2.  
te falto el int
Código
  1. for (int j = 0; j <tama - i ; j++)
  2.  

cuando declaras la variable en la sección de inicializacion de una estructura for su alcanse esta acotado al for.

aca esta modificado y funciona:
Código
  1. #include <cstdlib>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5.  
  6. int main(int argc, char *argv[])
  7. {
  8.        int temp=0;
  9.        const int tama = 10;
  10. int a[tama] ={5,50,20,10,10,8,3,2,6,1};
  11. //imprimos el arreglo con los valores iniciales
  12. cout<<"arreglo antes de ordenar......"<<endl;
  13. cout<<endl;
  14. cout<<endl;
  15.  
  16.        for (int j =0; j <tama; j++) {
  17. cout<<j<<" "<<a[j]<<endl;
  18. }
  19.  
  20. cout<<endl;
  21. cout<<"arreglo despues de ordenar..........."<<endl;
  22. cout<<endl;
  23. cout<<endl;
  24.  
  25. for (int i = 0; i <tama; i++ ){
  26. for (int j = 0; j <(tama- i); j++){
  27.  
  28. if ( a[j]> a[j + 1]) {
  29.  
  30. temp = a[j];
  31. a[j] = a[j + 1] ;
  32. a[j + 1] = temp;
  33. }
  34. }
  35. }
  36.  
  37. for (int j =0; j <tama; j++) {
  38.                             cout<<j<<" "<<a[j]<<endl;
  39. }
  40.  
  41.        system("PAUSE");
  42.        return EXIT_SUCCESS;
  43. }
  44.  
  45.  
  46.  

Saludos Cualquier otro problema no dudes en consultar.



« Última modificación: 31 Julio 2010, 00:56 am por Devil_Nero » En línea

cbug

Desconectado Desconectado

Mensajes: 147



Ver Perfil
Re: [ayuda][c++]ordenar arreglo
« Respuesta #2 en: 31 Julio 2010, 00:48 am »

En realidad no sé si funciona, pero fijate que analizarás un elemento que no corresponde, ejemplo

Código:
i = 1, luego j se comparará con i = 1.

En realidad:

Código
  1. for(int i = 0; i < n - 1; i++)
  2.    for(int j = 0; j < n; j++)
  3.        If(...)
  4.           swap(...,...)
En línea

dragon_hack

Desconectado Desconectado

Mensajes: 9



Ver Perfil WWW
Re: [ayuda][c++]ordenar arreglo
« Respuesta #3 en: 31 Julio 2010, 21:18 pm »

muy interesantes sus aclaraciones, pero no me respondieron mi duda principal: como funciona el metodo de la burbuja? y la sintaxis para este caso cual seria???

PD: gracias por el arreglo del code  ;D
En línea


Tutorial 1 100%
Tutorial 2 56%
Tutorial 3 23%
Littlehorse
All the world's a stage
Moderador
***
Desconectado Desconectado

Mensajes: 2.714


Nie Dam Sie


Ver Perfil WWW
Re: [ayuda][c++]ordenar arreglo
« Respuesta #4 en: 31 Julio 2010, 21:20 pm »

Burbuja
burbuja C site:foro.elhacker.net

 :D

Saludos!
En línea

An expert is a man who has made all the mistakes which can be made, in a very narrow field.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ordenar un arreglo en c++
Programación C/C++
angel91 5 32,504 Último mensaje 14 Enero 2012, 14:38 pm
por rir3760
ordenar arreglo bidimensional
Programación C/C++
jona1107 1 4,992 Último mensaje 18 Noviembre 2012, 17:37 pm
por durasno
Buscar controls dado un arreglo (Ayuda)
Programación Visual Basic
dunz712 1 1,874 Último mensaje 2 Septiembre 2013, 07:40 am
por dunz712
segmentation al ordenar un arreglo de objetos
Programación C/C++
yeah_2796 0 1,766 Último mensaje 19 Mayo 2015, 22:51 pm
por yeah_2796
Ayuda en C (Arreglo, Impar y Ordenar)
Programación C/C++
ranker 5 2,883 Último mensaje 27 Mayo 2015, 22:39 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines