Foros del Web » Programación para mayores de 30 ;) » C/C++ »

¿Se les ocurre un algoritmo más óptimo? [Ciclos en C++]

Estas en el tema de ¿Se les ocurre un algoritmo más óptimo? [Ciclos en C++] en el foro de C/C++ en Foros del Web. Bueno, hice un ejercicio con ciclos for en C++, y pues... siento que mi algoritmo no quedó muy bien que digamos, pero bueno, me gustaría ...
  #1 (permalink)  
Antiguo 27/11/2012, 02:59
 
Fecha de Ingreso: abril-2011
Mensajes: 224
Antigüedad: 13 años
Puntos: 8
Pregunta ¿Se les ocurre un algoritmo más óptimo? [Ciclos en C++]

Bueno, hice un ejercicio con ciclos for en C++, y pues... siento que mi algoritmo no quedó muy bien que digamos, pero bueno, me gustaría su opinión y si tienen alguna idea de cómo mejorarlo, se los agradecería mucho.

No puedo explicar qué hace exactamente el programa, porque es dibujar diversos triángulos con asteriscos y espacios, entonces es preferible que lo ejecuten o algo así, para que vean.

Código C++:
Ver original
  1. #include <iostream>
  2. using std::cout;
  3. using std::endl;
  4.  
  5. int main()
  6. {
  7.    int estrellas1 = 1;
  8.    int espacios1 = 9;
  9.    int estrellas2 = 10;
  10.    int espacios2 = 0;
  11.    int estrellas3 = 10;
  12.    int espacios3 = 0;
  13.    int estrellas4 = 1;
  14.    int espacios4 = 9;
  15.  
  16.    for(int x = 0; x < 10; x++, estrellas1++, espacios1--, estrellas2--,
  17.       espacios2++, estrellas3--, espacios3++, estrellas4++, espacios4--)
  18.    {
  19.       for(int r = estrellas1; r > 0; r--)
  20.          cout << "*";
  21.       for(int r = espacios1; r > 0; r--)
  22.          cout << " ";
  23.  
  24.       cout << "  ";
  25.  
  26.       for(int r = estrellas2; r > 0; r--)
  27.          cout << "*";
  28.       for(int r = espacios2; r > 0; r--)
  29.          cout << " ";
  30.  
  31.       cout << "  ";
  32.  
  33.       for(int r = espacios3; r > 0; r--)
  34.          cout << " ";
  35.       for(int r = estrellas3; r > 0; r--)
  36.          cout << "*";
  37.  
  38.       cout << "  ";
  39.  
  40.       for(int r = espacios4; r > 0; r--)
  41.          cout << " ";
  42.       for(int r = estrellas4; r > 0; r--)
  43.          cout << "*";
  44.  
  45.       cout << endl;
  46.    }
  47.  
  48.    return 0;
  49. }

Saludos!
  #2 (permalink)  
Antiguo 29/11/2012, 05:33
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 11 años, 10 meses
Puntos: 127
Respuesta: ¿Se les ocurre un algoritmo más óptimo? [Ciclos en C++]

La salida es http://codepad.org/GKfN7cnP

Está bien, no sé qué a qué te refieres. Por favor las cuestiones de índole mística en otro sitio.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #3 (permalink)  
Antiguo 29/11/2012, 15:07
 
Fecha de Ingreso: abril-2011
Mensajes: 224
Antigüedad: 13 años
Puntos: 8
Respuesta: ¿Se les ocurre un algoritmo más óptimo? [Ciclos en C++]

Gracias, me refería a que si podía hacer lo mismo con menos instrucciones for, pero anidados? :)

Etiquetas: ciclos, eficiente, algoritmos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:51.