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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


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


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #20 en: 9 Marzo 2014, 17:39 pm »

Acepto el reto, jeje (claro, en un nuevo post) ...
[/b]

Pues a por él, pero eso sí en forma de triángulo isósceles. La forma clásica, vamos.

Ya que te lanzo el guante te dejo que elijas "armas", es decir que empieces el tema cuando te "sientas preparado". ..... es broma, ¿ehh..?.


¡¡¡¡ Saluditos! ..... !!!!





En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #21 en: 12 Marzo 2014, 21:02 pm »

Perdonen que vuelva a la carga, pero creo que esto no está terminado :laugh:.

Antes que nada poner un caso que se me traspapelo entre tanto rombo. Es el caso de distinguir entre el borde y el interior:




Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.  int i=0,j,k=1,l,a=21;
  5.  /*do{
  6.     printf("\nBase del rombo(numero impar positivo): \n");
  7.     scanf("%d",&a);
  8.     }while ( a <=0 || (a % 2) == 0);*/
  9.    char A[a+4][a+4],cad[]="L E O S A N S A N";
  10.    for ( i=0;i<=a+4;i++)
  11.      for ( j=0;j<=a+4;j++)
  12.        A[i][j]='0';
  13.    A[0][a/2]=254;
  14.    i=1;
  15.    while (i<=a/2){
  16.      l=i;
  17.      for ( j=(a/2)-i;j<=i+(a/2);j++){
  18.        if (j==(a/2)-l || j==l+(a/2))
  19.          A[i][j]=254;
  20.        else
  21.          A[i][j]='*';
  22.      }
  23.      i++;
  24.    }
  25.    k=i;
  26.    while (i>=(a/2) && i<=a){
  27.      --k;
  28.      l=k;
  29.      for ( j=(a/2)+1-k;j<(a/2)+k;j++)
  30.        if (j==(a/2)+1-l || j==(a/2)+l-1)
  31.          A[i][j]=254;
  32.        else
  33.          A[i][j]='*';
  34.      i++;
  35.    }
  36.    if (a>20){
  37.      for ( i=(a/2)-8,k=0;i<(a/2)+10;i++,k++)
  38.        A[i][a+1]=cad[k];
  39.    }
  40.    for ( i=0;i<a;i++){
  41.      printf("\t\t");
  42.      for ( j=0;j<a+2;j++){
  43.         if (A[i][j]=='0')
  44.            printf("%c",' ');
  45.          else
  46.            printf("%c",A[i][j]);
  47.      }
  48.      putchar ('\n');
  49.    }
  50.    putchar ('\n');
  51.    return 0;
  52. }

¿Qué pasa con los expertos en C++?

A ver si se animan a colgar algo de código en C++.

Yo en dicho lenguaje soy un total neófito, pero por lo menos se traducir algo de C  a C++. Así me salió esto:


Código
  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int n,fila,col;
  6. cout<<"Introduce un numero IMPAR: "<<endl;
  7. cin >> n;
  8.    for(fila=1;fila<=n;fila++){
  9.        for(col=1;col<=n-fila;col++)
  10.           cout<<(" ");
  11.        for(col=1;col<=2*fila-1;col++)
  12.          cout<<("*");
  13.    cout<<endl;
  14.    }
  15.    for(fila=n-1;fila>=1;fila--) {
  16.        for(col=1;col<=n-fila;col++)
  17.          cout<<(" ");
  18.        for(col=1;col<=2*fila-1;col++)
  19.        cout<<("*");
  20.    cout<<endl;
  21.    }
  22. }

Pero claro, yo espero más de los expertos en C++, que haberlos hay los, todo está en que se animen con nuevas aportaciones.

Y todavía estoy a la espera que yoel_alejandro intervenga, que me dijo me iba a sorprender. No lo dejes estar mucho tiempo que se enfría el tema.

Y dedicado precisamente a yoel_alejandro al que rete en mi anterior mensaje, le dejo una versión "made in leosansan" del triángulo de Pascal, en este caso para que sea más a tono con el tema que se trata, de la pirámide de Pascal .... si ya sé que me acabo de inventar el término, pero ¿a qué queda bien? ...




¡¡¡¡ Saluditos! ..... !!!!





« Última modificación: 13 Marzo 2014, 15:22 pm por leosansan » En línea

dmacias

Desconectado Desconectado

Mensajes: 41


Ver Perfil WWW
Re: [C] Rombo con asteriscos
« Respuesta #22 en: 13 Marzo 2014, 22:24 pm »

Vaya leosansan, siq ue le has cojido el gusto al rombo jijijijjii
haber si me dejan un poco mas de tiempo libre e intento el triangulo de pascal ese, haber que sale
En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #23 en: 14 Marzo 2014, 01:39 am »

Huy, a mi dibujar formas en ASCII me da un dolor de cabeza... Es de los ejercicios que no puedo xD

Solo decir que las llamadas a printf/cout tienen mucho retraso, es más eficiente pintar línea a línea que caracter a caracter.

Pero vamos, son detallitos. Para que empezases a notar la diferencia tendría que ser rombos de más de 1000 o cosa así.

PD: El triangulo de pascal... ¿Recursivo?
« Última modificación: 14 Marzo 2014, 01:41 am por amchacon » En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #24 en: 14 Marzo 2014, 18:43 pm »


Huy, a mi dibujar formas en ASCII me da un dolor de cabeza... Es de los ejercicios que no puedo xD
..............................................................................

PD: El triangulo de pascal... ¿Recursivo?


¡¡¡Vamos hombre!!!, que no se trata de crear retratos o figuras complejas, además si te animas con el triángulo de Pascal, ya que tienes que crear la forma de triángulo, te será fácil dibujar la parte inferior y así ya tienes el rombo.

Hablando del triángulo de Pascal, me da igual como se obtenga,con recursión o sin ella,  la idea es que la gente aporte soluciones variadas, como un reto, ni más ni menos. Ya luego podremos comenta rentre todos  cual ha sido el más eficiente y cosas así.

Y para que no decaiga el tema yo aporto otro granito de arena al tema de los rombos en C++, que repito soy un pardillo total. Me cuesta horrores porque no controlo las salidas por pantalla, en C tengo los printf pero en C++ ..... sólo conozco cout, pero no sus posibilidades que me imagino tendrá, y setw. Y con este último me ha salido otro código con recursividad incluida:


Código
  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4. int dibuja_arriba (int a,int cont);
  5. int dibuja_abajo (int a,int cont);
  6.  
  7. int main()
  8. {
  9.    int cont=25,a=0;
  10.    /*cout << "Introduce un numero IMPAR: "<<endl;
  11.     cin >> a;
  12.     cout <<endl ;*/
  13.    dibuja_arriba (a,cont);
  14.    cout <<  "  ";
  15.    dibuja_abajo (cont-2,a+1);
  16.    return 0;
  17. }
  18.  
  19. int dibuja_arriba (int a,int cont){
  20.    if (cont<=0)
  21.      return 1;
  22.    cout <<setw((cont/2)+1) << " ";
  23.    for (int i=0;i<=a;i++)
  24.      cout<< "*";
  25.    cout << endl;
  26.    dibuja_arriba (a+2,cont-2);
  27. }
  28.  
  29. int dibuja_abajo (int a,int cont){
  30.    if (a<=0)
  31.      return 1;
  32.    for (int i=1;i<=a;i++)
  33.      cout<<"*";
  34.    cout << endl << setw(cont+2) << " ";
  35.    dibuja_abajo (a-2,cont+1);
  36. }

Tuve que hacer algún ajuste "extraño" pero sale bien la pirámide.

¡¡¡¡ Saluditos! ..... !!!!



En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #25 en: 14 Marzo 2014, 22:58 pm »

Bueno que no se diga, dibujare señales cuadradas. Aquí teneís varias a distintas escalas:



Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cmath>
  4. using namespace std;
  5.  
  6. void DibujarSenyalCuadrada(const int frecuencia = 1,char caracter = '*',ostream &fout = cout);
  7.  
  8. int main()
  9. {
  10.    int frecuencia;
  11.    //cout<<"Introduca frecuencia: ";
  12.    //cin>>frecuencia;
  13.    for (int i = 3; i < 20;i++)
  14.    {
  15.        DibujarSenyalCuadrada(i);
  16.        cout<<endl;
  17.    }
  18.    return 0;
  19. }
  20.  
  21. void DibujarSenyalCuadrada(const int frecuencia,char caracter,ostream &fout)
  22. {
  23.    const int max_asci = 50;
  24.    int j = 0;
  25.    string separador(frecuencia-2,' ');
  26.    string escalon(frecuencia,caracter);
  27.  
  28.    while (j < max_asci)
  29.    {
  30.        fout<<escalon;
  31.        fout<<separador;
  32.        j += 2*frecuencia;
  33.    }
  34.  
  35.    fout<<endl;
  36.    // escalones de bajada
  37.  
  38.    for (int i = 0; i < frecuencia;i++)
  39.    {
  40.        j = 0;
  41.        fout<<' ';
  42.        while (j < max_asci)
  43.        {
  44.            fout<<separador;
  45.            fout<<caracter;
  46.            j += frecuencia;
  47.        }
  48.        fout<<endl;
  49.    }
  50.  
  51.    // barreras inferiores
  52.  
  53.    fout<<separador;
  54.    fout<<' ';
  55.    j = 0;
  56.  
  57.    while (j < max_asci)
  58.    {
  59.        fout<<escalon;
  60.        fout<<separador;
  61.        j += 2*frecuencia;
  62.    }
  63.    fout<<endl;
  64. }

Notese que escribo en fout en vez de cout. De esa forma puedo decirle a la función que escriba en un fichero externo en vez de la pantalla:

Código
  1. int main()
  2. {
  3.    ofstream fichero("cuadrada.txt");
  4.  
  5.    for (int i = 3; i < 20;i++)
  6.    {
  7.        DibujarSenyalCuadrada(i,'*',fichero);
  8.        fichero<<endl;
  9.    }
  10.    return 0;
  11. }
« Última modificación: 14 Marzo 2014, 23:29 pm por amchacon » En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #26 en: 15 Marzo 2014, 14:29 pm »


Bueno que no se diga, dibujare señales cuadradas.


Pero ese no era el tema, estábamos hablando de pirámides.

Pero bueno, para que no se diga, sin array, strings ni funciones. Solamente con el misero pero potente printf y mucha imaginación:


A mi ni me caben más en la pantalla:

Código
  1. #include <stdio.h>
  2.  
  3. int main(){
  4.  int i,j,k,l=0,cont=0,cont1=0,tam,MAX=40;
  5.  for (tam=3;tam<=15;tam++){
  6.    cont=cont1=0;
  7.    for (i=0,j=0;i<MAX-1;i++,j++){
  8.      putchar('*');
  9.      if (j==tam-1)
  10.        printf ("%*c", tam-2, ' ');
  11.       if (i%tam==0){
  12.         cont++;
  13.         j=0;
  14.       }
  15.    }
  16.    putchar ('\n');
  17.    for (k=0;k<tam;k++){
  18.      for (i=0,j=0;i<2*MAX/tam-1;i++,j++){
  19.        if (cont1==cont-1)
  20.          break;
  21.        if (j==0)
  22.          printf ("%*c", tam, '*');
  23.        else
  24.            printf ("%*c", tam-1, '*');
  25.        if (k==tam-1  && i<(2*MAX/tam-1)/2+1){
  26.          cont1++;
  27.          for (l=0;l<tam-1;l++){
  28.            putchar('*');
  29.          }
  30.        }
  31.        if (i%(tam+1)==0)
  32.          j=0;
  33.      }
  34.      putchar ('\n');
  35.    }
  36.  putchar ('\n');
  37.  }
  38. return 0;
  39. }

De todas formas sería más fácil usando una función matemática. ¿Te animas?.

¡¡¡¡ Saluditos! ..... !!!!


« Última modificación: 15 Marzo 2014, 16:34 pm por leosansan » En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #27 en: 15 Marzo 2014, 16:53 pm »

Pero esque las piramides ya las hecho ;D

Pensé en hacer un circulo, pero hacer un circulo en una consola ASCII no es trivial. Para que te quedara bien habría que hacer "anti-alising" con alguna letra más redondita.

De todas formas sería más fácil usando una función matemática. ¿Te animas?.[/center]
¿Más fácil? De eso nada xD

Para empezar rompe el enfoque arriba-abajo, además para sacarla tendrías que hacer unas series de fourier muy divertidas... Y probablemente alguna casilla te salga mal ya que no es exacta y las casillas no admiten decimales.
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #28 en: 15 Marzo 2014, 20:19 pm »


 
Pero es que las pirámides ya las hecho ;D

.......................................

Pero apenas en C++, ya te digo que no sé muy bien como imprimir de  forma avanzada. No obstante continuo con mis aportaciones, para que vean lo que puede dar de sí este tema:


Código
  1. #include <iostream>
  2.  
  3. using namespace std;
  4. /*********************************/
  5. void entrar_num_base (int &n){
  6.   /*cout << "Introduce un numero IMPAR: "<<endl;
  7.     cin >> n;
  8.     cout <<endl ;*/
  9. }
  10. /*********************************/
  11. void asteriscos (int &i){
  12.  for(int j=1;j<=i;j++)
  13.    cout<<'*'<<" ";
  14.  cout<<endl;
  15. }
  16.  
  17. /*********************************/
  18. void parte_superor (int i, int n){
  19.  for(i=1;i<=n;i+=2){
  20.    for(int b=n-i;b>0;b--)
  21.      cout<<" ";
  22.    asteriscos(i);
  23.  }
  24. }
  25. /*********************************/
  26. void parte_inferior(int i,int n){
  27.  for(i=n-2;i>=1;i-=2){
  28.    for(int b=n-i;b>0;b--)
  29.      cout<<" ";
  30.    asteriscos(i);
  31.  }
  32. }
  33. /*********************************/
  34.  
  35. int main(){
  36.  int i=0,num_base=25;
  37.  ///entrar_num_base (num_base);
  38.  parte_superor (i,num_base);
  39.  parte_inferior(i,num_base);
  40.  return 0;
  41. }

...................................................
¿Más fácil? De eso nada xD

Para empezar rompe el enfoque arriba-abajo, además para sacarla tendrías que hacer unas series de fourier muy divertidas... Y probablemente alguna casilla te salga mal ya que no es exacta y las casillas no admiten decimales.



¡No hombre!, no pensaba en ese sistema, para eso ya tengo el Mathematica y el Matlab.

Pensaba en esta idea:


Citar


f(x)=a/2 ......    0<=x<=a/2

f(x)=-a/2 ...... -a/2<x<a


Para ello me apoyo en el uso del gotoxy, bien mediante la librería de conio, más exactamente la conio2.h:

Código
  1. #include <stdio.h>
  2. #include <conio2.h>
  3.  
  4. int main(){
  5.  int  i,j,k,l,a;
  6.  for (a=2,l=1;a<19;a++,l+=2*a+2){
  7.    for (k=1;k<=50;k+=2*a) {
  8.      for (i=0;i<=a;i++){
  9.        gotoxy(i+k,0+l);
  10.        putchar('*');
  11.        for (j=0;j<=a;j++){
  12.          gotoxy(a+k,j+l);
  13.          putchar('*');
  14.        }
  15.        gotoxy(i+a+k,a+l);
  16.        putchar('*');
  17.        for (j=0;j<=a;j++){
  18.          gotoxy(2*a+k,j+l);
  19.          putchar('*');
  20.        }
  21.      }
  22.    }
  23.  }
  24.  return 0;
  25. }

O bien en la librería de windows.h:

Código
  1. #include <stdio.h>
  2. #include <windows.h>
  3.  
  4. int gotoxy(int x, int y);
  5.  
  6. int main(){
  7.  int  i,j,k,l,a;
  8.  for (a=2,l=0;a<20;a++,l+=2*a+2){
  9.    for (k=0;k<=50;k+=2*a) {
  10.      for (i=0;i<=a;i++){
  11.        gotoxy(i+k,0+l);
  12.        putchar('*');
  13.        for (j=0;j<=a;j++){
  14.          gotoxy(a+k,j+l);
  15.          putchar('*');
  16.        }
  17.        gotoxy(i+a+k,a+l);
  18.        putchar('*');
  19.        for (j=0;j<=a;j++){
  20.          gotoxy(2*a+k,j+l);
  21.          putchar('*');
  22.        }
  23.      }
  24.    }
  25.  }
  26.  return 0;
  27. }
  28.  
  29.  
  30. int gotoxy(int x, int y)
  31. {
  32.   COORD coord;
  33.   HANDLE h_stdout;
  34.   coord.X = x;
  35.   coord.Y = y;
  36.   if ((h_stdout = GetStdHandle(STD_OUTPUT_HANDLE)) == INVALID_HANDLE_VALUE)
  37.      return 0;
  38.   if (SetConsoleCursorPosition(h_stdout, coord) == 0)
  39.      return 0;
  40.   return 1;
  41. }


No he puesto los ejes por pereza xD. ;)

Esta vez, en vista de que "no cabe" en la página todas las funciones que genero, de 3 a 19 o 20, las metí en un vídeo, ..... tranquilos, dura menos de un minutito: :o




¡¡¡¡ Saluditos! ..... !!!!


« Última modificación: 18 Marzo 2014, 14:28 pm por leosansan » En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: [C] Rombo con asteriscos
« Respuesta #29 en: 16 Marzo 2014, 14:02 pm »

Chachi ^^. Un paso curioso sería hacerlas animadas (borrando y reescribiendola con otra posición cada x tiempo).

Yo de florituras en la pantalla, ni se me dan bien ni me gustan mucho. Por no dejar el tema a medias he hecho algo más de mi gusto: Una class Triangulo_Pascal:

Código
  1. /** Resumen de los metodos públicos:
  2.  
  3. - Constructor(int n = 0): Genera un triangulo de pascal de tamanyo N
  4. - Constructor(triangulo_pascal): Constructor copia.
  5. - getPosicion(int x,int y): Devuelve el valor en la posicion en la posicion x,y. Lanza una excepcion si es una posición incorrecta
  6. - getSize(): Devuelve el tamanyo actual del triangulo
  7. - resize(int n): Reconstruye el triangulo para un ancho n
  8. - clear(): Borra el triangulo dejandolo con un tamanyo 0.
  9. - toString(): Obtiene una expresion escrita del triangulo.
  10.  
  11. Operadores:
  12.  
  13. triangulo_pascal = triangulo_pascal   /** asignacion *
  14. triangulo_pascal == triangulo_pascal  /** iguales? *
  15. triangulo_pascal != triangulo_pascal  /** diferentes? *
  16. **/
  17.  
  18. class triangulo_pascal
  19. {
  20.    int** Matriz;
  21.    int TAM;
  22.    string texto;
  23.  
  24.    int contar_cifras() const
  25.    {
  26.        int cifras = 1;
  27.        int aux = Matriz[TAM-1][TAM/2];
  28.  
  29.        while (aux > 9)
  30.        {
  31.            cifras++;
  32.            aux /= 10;
  33.        }
  34.  
  35.        return cifras;
  36.    }
  37.  
  38.    void generar(const int n)
  39.    {
  40.        TAM = n;
  41.        Matriz = new int*[n];
  42.        Matriz[0] = new int[1];
  43.        Matriz[0][0] = 1;
  44.  
  45.        for (int i = 1; i < n;i++)
  46.        {
  47.            Matriz[i] = new int[i+1];
  48.  
  49.            Matriz[i][0] = 1;
  50.            for (int j = 1; j < i;j++)
  51.            {
  52.                Matriz[i][j] = Matriz[i-1][j-1]+Matriz[i-1][j];
  53.            }
  54.            Matriz[i][i] = 1;
  55.        }
  56.  
  57.        generarString();
  58.    }
  59.  
  60.    void generarString()
  61.    {
  62.        stringstream ss;
  63.  
  64.        const int size = contar_cifras();
  65.  
  66.        for (int i = 0; i < TAM;i++)
  67.        {
  68.            for (int k = 0; k <= (TAM-i-2);k++)
  69.                ss<<" ";
  70.  
  71.            ss<<Matriz[i][0];
  72.  
  73.            for (int j = 1; j <= i;j++)
  74.            {
  75.                ss<<" ";
  76.  
  77.                ss<<setw(size)<<Matriz[i][j];
  78.            }
  79.  
  80.            ss<<endl;
  81.        }
  82.  
  83.        texto = ss.str();
  84.    }
  85. public:
  86.    triangulo_pascal(int n = 0)
  87.    {
  88.        if (n != 0)
  89.        {
  90.            generar(n);
  91.        }
  92.        else Matriz = NULL;
  93.    }
  94.  
  95.    triangulo_pascal(const triangulo_pascal &a)
  96.    {
  97.        if (a.getSize() != 0)
  98.            generar(a.getSize());
  99.        else Matriz = NULL;
  100.    }
  101.  
  102.    triangulo_pascal& operator=(const triangulo_pascal &a)
  103.    {
  104.        if (a.getSize() != 0)
  105.            generar(a.getSize());
  106.        else Matriz = NULL;
  107.    }
  108.  
  109.    bool operator==(const triangulo_pascal &b)
  110.    {
  111.        return TAM == b.TAM;
  112.    }
  113.  
  114.    bool operator!=(const triangulo_pascal &c)
  115.    {
  116.        return TAM != c.TAM;
  117.    }
  118.  
  119.    int getPosicion(int x,int y) const
  120.    {
  121.        if (y < TAM || (x > y)) throw "Error, fuera de rango";
  122.        return Matriz[x][y];
  123.    }
  124.  
  125.    int getSize() const { return TAM;}
  126.  
  127.    void resize(int n)
  128.    {
  129.        if (n < 0) throw "Error, tamanyo negativo";
  130.  
  131.        clear();
  132.  
  133.        if (n == 0){return;}
  134.  
  135.        generar(n);
  136.    }
  137.  
  138.    void clear()
  139.    {
  140.        if (Matriz == NULL) return;
  141.  
  142.        for (int i = 0; i < TAM;i++)
  143.            delete[] Matriz[i];
  144.  
  145.        delete[] Matriz;
  146.  
  147.        Matriz = NULL;
  148.        TAM = 0;
  149.    }
  150.  
  151.    string toString() const
  152.    {
  153.        return texto;
  154.    }
  155.  
  156.    operator string()
  157.    {
  158.        return toString();
  159.    }
  160.  
  161.    ~triangulo_pascal()
  162.    {
  163.        clear();
  164.    }
  165. };
  166.  

De la cual, podemos hacer algunas pruebas:

Código
  1. int main()
  2. {
  3.    triangulo_pascal mi_triangulo(5);
  4.  
  5.    cout<<mi_triangulo.toString()<<endl;
  6.    mi_triangulo.resize(4);
  7.    cout<<mi_triangulo.toString()<<endl;
  8.  
  9.    triangulo_pascal segundo(1);
  10.  
  11.    if (mi_triangulo != segundo)
  12.    {
  13.        cout<<"Son diferentes :("<<endl<<endl;
  14.    }
  15.  
  16.    cout<<(string)segundo<<endl; // otra forma de pasarlo a string es usando los casts
  17.    return 0;
  18. }
  19.  

El mayor fallo que tiene es la función para pasarlo a string, que aunque siempre genera el triangulo, lo hace un poco "raro" para algunos valores de N.
« Última modificación: 16 Marzo 2014, 14:03 pm por amchacon » En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
Páginas: 1 2 [3] 4 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Mini Reto Python. Dibujar rombo ~ « 1 2 »
Ejercicios
Dnk! 14 25,744 Último mensaje 6 Marzo 2013, 09:59 am
por santiasecas
Imprimir un patron de asteriscos
Programación C/C++
dmacias 5 5,364 Último mensaje 2 Febrero 2014, 18:35 pm
por dmacias
[C] Ayuda para cerrar mi rombo
Programación C/C++
izazaga 1 1,576 Último mensaje 29 Septiembre 2015, 20:34 pm
por ivancea96
Crear rombo de asteriscos en javascript
Desarrollo Web
LuisCardenas123 3 5,942 Último mensaje 4 Noviembre 2019, 09:41 am
por Agente Naranja
¿Cómo funciona el color del rombo?
Sugerencias y dudas sobre el Foro
Tachikomaia 5 5,730 Último mensaje 17 Noviembre 2020, 14:43 pm
por Danielㅤ
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines