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

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


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

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Piramide de asteriscos
« en: 11 Abril 2014, 14:53 pm »

Hola, buenas tardes,

Tengo que realizar el síguete ejercicio y no me acaba de salir: Crea un programa que permita leer un numero natural N y que dibuje una pirámide de asteriscos con base y altura N. Pr ejemplo, si N=5, debería de dibujar:
   *
  **
  ***
 ****
 *****

Os dejo el código que llevo hasta ahora (la pirámide me la imprime pero no la "rellena" de asteriscos):

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main()
  5. {
  6. int altura,j,k;
  7.  
  8. printf("Altura: \n");
  9. scanf("%d",&altura);
  10. printf("\n");
  11.  
  12. if(altura>0)
  13. {
  14. for (k=1;k<=altura-1;k++)
  15.    printf(" ");
  16. printf("*");
  17. printf("\n");
  18. }
  19.  
  20. for (k=2;k<=altura-1;k++)
  21. {
  22. for (j=1;j<=altura-k;j++)
  23. printf(" ");
  24. printf("*");
  25.  
  26. for(j=1;j<=2*k-3;j++)
  27. printf(" ");
  28. printf("*");
  29. printf("\n");
  30. }
  31.  
  32. if (altura>1)
  33. {
  34. printf("*");
  35. for (k=1;k<=altura-1;k++)
  36. {
  37. printf(" ");
  38. printf("*");
  39. }
  40. printf("\n");
  41. }
  42.  
  43. system("PAUSE");
  44. return 0;
  45. }

Espero que me podáis ayudar.

Un saludo  :-*


En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: Piramide de asteriscos
« Respuesta #1 en: 11 Abril 2014, 15:47 pm »

En este enlace tienes multitud de opciones. Aunque son para rombos, en tu caso es más sencillo, sólo tomas la mitad.

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



EDITO: En tu caso, para no variar mucho lo que tienes, te vale:

Código
  1. ..................
  2. scanf ...............
  3. for (k=1;k<=altura;k++)
  4. {
  5.  for (j=1;j<=altura-k;j++)
  6.    printf(" ");
  7.  for(j=1;j<=2*k-1;j++)
  8.    if (j%2==0)
  9.      printf(" ");
  10.    else
  11.      printf("*");
  12.    printf("\n");
  13. }
  14. system("PAUSE");

Código
  1.         *
  2.        * *
  3.       * * *
  4.      * * * *
  5.     * * * * *
  6.    * * * * * *
  7.   * * * * * * *
  8.  * * * * * * * *
  9. * * * * * * * * *
  10. * * * * * * * * * *
  11.  


« Última modificación: 11 Abril 2014, 17:25 pm por leosansan » En línea

yuna88

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: Piramide de asteriscos
« Respuesta #2 en: 12 Abril 2014, 11:32 am »

Hola leosansan,

Gracias por tu ayuda :)

Ahora el segundo apartado del ejercicio me dice que pase ese mismo programa a funciones. Lo he intentado pero no me acaba de salir, dejo el código que llevo hecho hasta ahora:

Código
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void piramide(int altura);
  5.  
  6. int main()
  7. {
  8. int alt;
  9.  
  10. printf("Altura: \n");
  11. scanf("%d",&alt);
  12.  
  13. piramide(altura);
  14.  
  15. system("PAUSE");
  16. return 0;
  17. }
  18.  
  19. void piramide(int altura)
  20. {
  21. int k,j;
  22.  
  23. for (k=1;k<=altura;k++)
  24. {
  25. for (j=1;j<=altura-k;j++)
  26.   printf(" ");
  27. for(j=1;j<=2*k-1;j++)
  28.   if (j%2==0)
  29.     printf(" ");
  30.   else
  31.     printf("*");
  32.   printf("\n");
  33.   }
  34. }


No se que es lo que me falla porque aparentemente, lo veo bien :S

Gracias nuevamente por vuestra ayuda  :-*
En línea

noele1995

Desconectado Desconectado

Mensajes: 137



Ver Perfil
Re: Piramide de asteriscos
« Respuesta #3 en: 12 Abril 2014, 13:10 pm »

Bueno supongo que sera el error del main, tienes una variable alt y intentas pasar una variable llamada altura....

Código
  1. int main()
  2. {
  3.    int alt;
  4.  
  5.    printf("Altura: \n");
  6.    scanf("%d",&alt);
  7.  
  8.    piramide(alt);
  9.  
  10.    system("PAUSE");
  11.    return 0;
  12. }

Saludos
En línea

yuna88

Desconectado Desconectado

Mensajes: 11


Ver Perfil
Re: Piramide de asteriscos
« Respuesta #4 en: 12 Abril 2014, 14:56 pm »

¡Ostras! Vaya error más tonto.

Muchas gracias noele1995 por tu ayuda.

Un saludo  :-*
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Pirámide 3D sin usar apis « 1 2 »
Programación Visual Basic
<[(x)]> 16 5,690 Último mensaje 25 Noviembre 2008, 18:14 pm
por <[(x)]>
Como se veria la pirámide en tu ciudad
Foro Libre
[u]nsigned 0 1,511 Último mensaje 11 Enero 2012, 05:32 am
por [u]nsigned
Una pirámide de codicia
Noticias
wolfbcn 0 1,345 Último mensaje 6 Julio 2014, 22:21 pm
por wolfbcn
[Ayuda] piramide de numeros c++
Programación C/C++
sokolov123 2 25,826 Último mensaje 16 Octubre 2014, 17:31 pm
por rir3760
PIRAMIDE
Programación C/C++
mariano96 4 3,958 Último mensaje 13 Febrero 2015, 19:10 pm
por mariano96
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines