• Miércoles 6 de Noviembre de 2024, 05:44

Autor Tema:  Re: Problema Con Ejercicio De C  (Leído 1331 veces)

yulianix

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problema Con Ejercicio De C
« en: Viernes 19 de Noviembre de 2004, 11:18 »
0
Tengo que hacer una especie de piramide con números, supongo que para vosotros es fácil, pero yo estoy empezando y me quedado un poco trabado, os expongo el problema.

Número    Fila                número impar   número par  
  0             0                  12345                  1234
  1             3                  02340                  0230
  2             3                  00300                  0000
  3             5                  00000                  0230  
  4             5                  00300                  1234
  5             7                  02340
                                     12345

Había empezado algo así pero me he liado.
#include<stdio.h>
#include<conio.h>

void main (void)
{
  int i,j,medio,alto,num,relleno;
  clrscr();
  printf("\n Qué número quieres meter: ");
  scanf("%d",&num);
  relleno = 0;  //Esto es para poner un car cter cero
  alto =
  medio=alto-1;
  i=j=0;
  for(i=0;i<alto;i++)        //Para i=0 hasta alto
  {
    for(j=0;j<num;j++)     //Para j=0 hasta num
    {
    if((j>=medio-i) && (j<=medio+i))
      printf("%d", num);
      num --;
    else
      printf("%d", relleno);  
    }
  printf("\n");
  }
  getch();
}


Pero creó que hay que hacer un bucle  para meter números pares o impares si son pares alto=num+1 y medio=

Bueno que si me podeís echar una mano, sólo orientarme, el ejercio pretendo hacerlo yo,

yulianix

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problema Con Ejercicio De C
« Respuesta #1 en: Viernes 19 de Noviembre de 2004, 12:54 »
0
Cuándo metes un número impar sale:
 ej:5
12345
02340
00300
00000
00300
02340
12345

Cuándo metes un número par salé:
ej:4
1234
0230
0000
0230
1234
 
Y le problema es que me sale solo hasta la mitad hasta los ceros y no la otra mitad y otra es el incremento del número que si meto cinco me salen sólos 0 y 5.
Gracias por la ayuda.

yulianix

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
Re: Problema Con Ejercicio De C
« Respuesta #2 en: Viernes 19 de Noviembre de 2004, 14:32 »
0
#include<stdio.h>
#include<conio.h>

void main (void)
{
  int i,j,medio,ancho,alto,numero;
  char relleno;
  clrscr();
  printf("\n Inserta el n£mero para dibujar: ");
  scanf("%d",&numero);
  relleno = '0';  //Esto es para poner un car cter vac¡a
  ancho=numero;
  i=j=0;
  if(numero%2==0)
  {
   alto=numero+1;
  medio=(alto+1)/2;
  }
  else
  {
   alto=numero+2;
  medio=(alto+1)/2;
  }
  for(i=0;i<alto;i++)        //Para i=0 hasta alto
  {
    for(j=0;j<ancho;j++)     //Para j=0 hasta ancho
    {
      if((j>=medio-i) && (j<=medio+i))
   printf("%d", numero);        // se pone %d la variable es un n£mero
      else
   printf("%c", relleno);   //se pone c por que la variable es un car cter
      }
  printf("\n");
  }
  printf("\n Con cero y negativos nada de nada.");
  getch();
}

Hasta aquí he llegado me sale bien la altura, pero los números me salen descolocados. y no se que hacer más.