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

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


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

Desconectado Desconectado

Mensajes: 3


Ver Perfil
problema con un arreglo :c
« en: 22 Abril 2018, 04:02 am »

la idea es introducir numeros aleatorios, y luego mostrarlo en el orden introducido y luego mostrarlo en orden ascendente, la cuestion esta en que no me ordena y lo que hace es repetir un numeros varias veces, esto es lo que tengo.

Código
  1. #include<iostream>
  2. #include<stdlib.h>
  3. using namespace std;
  4.  
  5. class vector{
  6. private:
  7. int v[4], i, j, aux;
  8. public:
  9. vector(){}
  10. ~vector(){}
  11.  
  12. void leer(){
  13. cout<<"Introducir 10 valores: "<<endl;
  14. for(i = 0; i < 4; i++){
  15. cout<<"digite el numero "<<i+1<<": ";
  16. cin>>v[i];
  17. }
  18. system("cls");
  19. }
  20.  
  21. void ordenar(){
  22. for(j = 0; j <4; j++){
  23. for(i = 0; i < 4; i++){
  24. if(v[i] > v[i+1]){
  25. aux = v[i];
  26. v[i] = v[i+1];
  27. v[i+1] = aux;
  28. }
  29. }
  30. }
  31. }
  32.  
  33. void mostrar(){
  34. cout<<"Orden Introducido:\n";
  35. for(i = 0; i < 4; i++){
  36. cout<<v[i]<<endl;
  37. }
  38. ordenar();
  39. cout<<"\nOrden de menor a mayor:\n"<<endl;
  40. for(i = 0; i < 4; i++){
  41. cout<<v[i]<<endl;
  42. }
  43. }
  44. };
  45.  
  46. int main(){
  47. vector V;
  48.  
  49. V.leer();
  50. V.mostrar();
  51. return 0;
  52. }


En línea

Kenji-chan

Desconectado Desconectado

Mensajes: 104


Ver Perfil
Re: problema con un arreglo :c
« Respuesta #1 en: 22 Abril 2018, 04:44 am »

tu método de ordenamiento esta mal implementado

Código
  1. void ordenar(){
  2.    for(j = 0; j <4; j++){
  3.        for(i = 0; i < 4-j; i++){
  4.    if(v[i] > v[i+1]){
  5.        aux = v[i+1];
  6. v[i+1] = v[i];
  7. v[i] = aux;
  8.    }
  9.        }
  10.    }
  11. }
  12.  


En línea

[ ]

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: problema con un arreglo :c
« Respuesta #2 en: 22 Abril 2018, 05:03 am »

huy gracias viejo ya estaba volviendome loco eso!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con arreglo
Java
nolasco281 2 1,876 Último mensaje 27 Abril 2014, 15:54 pm
por nolasco281
problema recorrido de arreglo
Programación C/C++
marchiali 0 1,450 Último mensaje 24 Julio 2014, 21:34 pm
por marchiali
Pasar a función un arreglo con punteros o con el nombre del arreglo como puntero
Programación C/C++
NOB2014 3 3,414 Último mensaje 9 Junio 2016, 17:10 pm
por geeke
Arreglo de apuntadores vs. arreglo común en lenguaje C.
Programación C/C++
NOB2014 1 3,268 Último mensaje 1 Octubre 2016, 23:29 pm
por dato000
problema de arreglo bidimencional
Programación C/C++
Luischicho 1 1,463 Último mensaje 12 Agosto 2019, 17:55 pm
por K-YreX
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines