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 :)
//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
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
Cita de: rir3760 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
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
Cita de: luis456 en 27 Diciembre 2012, 12:17 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:
for (i=0; i< Tam; i++) {
if (array[i]>=80) break;
cout <<array[i])<<" ";
}
Saluditos!.
Cita de: leosansan en 27 Diciembre 2012, 16:04 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:
for (i=0; i< Tam; i++) {
if (array[i]>=80) break;
cout <<array[i])<<" ";
}
Saluditos!.
Bien si te entendi seria de esta forma no ?
//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])<<" ";
}
Cita de: luis456 en 27 Diciembre 2012, 16:50 PM
seria de esta forma ¡ ¡ ¡
//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:
Cita de: leosansan en 27 Diciembre 2012, 17:32 PM
Saluditos!. :rolleyes: :rolleyes: :rolleyes: :rolleyes:
Bueno realmente no se como ya darte las gracias :) ya entendí como funciona
Luis