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)
| | |-+  Como limitar un resultado en un ordenamiento de Burbuja
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como limitar un resultado en un ordenamiento de Burbuja  (Leído 2,906 veces)
luis456


Desconectado Desconectado

Mensajes: 543



Ver Perfil
Como limitar un resultado en un ordenamiento de Burbuja
« en: 26 Diciembre 2012, 07:05 am »

Hola y Feliz navidad a todos

Bien tengo que limitar que los resultados a ordenar y mostrar en esta funcion sea algo como que " resultado no sea mayor que 80 x ejemplo "

parte del codigo que me ordena es este pero npi :)

Código:
//ORDENAMIENTO MEDIANTE EL METODO DE BURBUJA
for(int i = 0; i < contador - 1; i++){
for(int j = i + 1; j < contador; j++){
if(resultados[i] > resultados[j]){//Si resultados[i] es mayor a resultados[j] ordenamiento ascendente
//ACA HACEMOS EL INTERCAMBIO DE VALORES DE resultados[i] a resultados[j] y viceversa
auxiliar = resultados[i];
resultados[i] = resultados[j];
resultados[j] = auxiliar;
// filtra = contador ;
}
}
}
//MOSTRAMOS LOS NUMEROS ORDENADOS///////////////aca puse esto mientras
cout<<"\nRESULTADOS EN ORDEN\n";



Luis


En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #1 en: 26 Diciembre 2012, 17:26 pm »

El algoritmo que utilizas para ordenar el array no es Burbuja, es Selección. Si realmente quieres aplicar el algoritmo BubbleSort hay varios ejemplos en el foro, solo es cuestión de utilizar el motor de búsqueda.

Y si quieres aplicar alguna limitante a la ordenacion debes explicarte de una mas clara ya que no se entiende. Si nos puedes poner un ejemplo de la entrada y salida mejor.

Un saludo


En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
luis456


Desconectado Desconectado

Mensajes: 543



Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #2 en: 27 Diciembre 2012, 12:17 pm »

El algoritmo que utilizas para ordenar el array no es Burbuja, es Selección. Si realmente quieres aplicar el algoritmo BubbleSort hay varios ejemplos en el foro, solo es cuestión de utilizar el motor de búsqueda.

Y si quieres aplicar alguna limitante a la ordenacion debes explicarte de una mas clara ya que no se entiende. Si nos puedes poner un ejemplo de la entrada y salida mejor.

Un saludo


Este pedazo simplemente ordena de menor a mayor el resultado de una ecuación en numeros ejemplo 1 2 3 4 5 6 7 8 10 15 25 38 45 etttt lo que nesecito es que no pase de o que no muestre mas de  por ejemplo el numero 80


 1 2 3 4 5 6 9 10 45 68 77 79,,no sigue se para en el 79 y acaba la funcion
me parece que donde tengo que poner la condicional es en

resultados[j] = auxiliar;

luis



En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #3 en: 27 Diciembre 2012, 16:04 pm »


 1 2 3 4 5 6 9 10 45 68 77 79,,no sigue se para en el 79 y acaba

Primero se tienen que ordenar todos, ya que si pones la condición en el "proceso" de ordenamiento y se encuentra con 80 se pararía.
Es decir, la condición la impondrías en la "impresión" de los números ordenados:
Código
  1. for (i=0; i< Tam; i++) {
  2.        if (array[i]>=80) break;
  3.         cout <<array[i])<<" ";
  4. }
Saluditos!.        
En línea

luis456


Desconectado Desconectado

Mensajes: 543



Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #4 en: 27 Diciembre 2012, 16:50 pm »

Primero se tienen que ordenar todos, ya que si pones la condición en el "proceso" de ordenamiento y se encuentra con 80 se pararía.
Es decir, la condición la impondrías en la "impresión" de los números ordenados:
Código
  1. for (i=0; i< Tam; i++) {
  2.        if (array[i]>=80) break;
  3.         cout <<array[i])<<" ";
  4. }
Saluditos!.        



Bien si te entendi seria de esta forma no ?

Código:
//MOSTRAMOS LOS NUMEROS ORDENADOS///////////////aca puse esto mientras
cout<<"\nRESULTADOS EN ORDEN\n";
////
    for(int i = 0; i < contador; i++){
cout<<resultados[i]<<" ";//Informamos cada numero de los resultados seguidos de un espacio
}

for (i=0; i< Tam; i++) {  <----------------------pero no entiendo aca
        if (resultados[i]>=80) break;
         cout <<resultados[i])<<" ";
}


En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #5 en: 27 Diciembre 2012, 17:32 pm »



 seria de esta forma ¡ ¡ ¡

Código:
//MOSTRAMOS LOS NUMEROS ORDENADOS///////////////aca puse esto mientras
cout<<"\nRESULTADOS EN ORDEN\n";
////
    for(int i = 0; i < contador; i++){

        if (resultados[i]>=80) break;
         cout <<resultados[i])<<" ";
}

Saluditos!. :rolleyes: :rolleyes: :rolleyes: :rolleyes:
En línea

luis456


Desconectado Desconectado

Mensajes: 543



Ver Perfil
Re: Como limitar un resultado en un ordenamiento de Burbuja
« Respuesta #6 en: 27 Diciembre 2012, 18:35 pm »

Saluditos!. :rolleyes: :rolleyes: :rolleyes: :rolleyes:


Bueno realmente no se como ya darte las gracias :) ya entendí como funciona

Luis
En línea

Que tu sabiduria no sea motivo de Humillacion para los demas
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines