• Viernes 1 de Noviembre de 2024, 06:38

Autor Tema:  Re: Principiante <_<  (Leído 1315 veces)

mapassja

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Re: Principiante <_<
« en: Jueves 19 de Octubre de 2006, 22:07 »
0
Bueno pues es que tengo que aprender esto para la escuela :rolleyes: no se, no soy muy experimentada aun en programacion....tengo un programa que tengo que hacer, en un "tablero" de 20x20 dibujar una X

aqui tengo el codigo q tengo hasta ahorita solo que me sale la mitad superior d la X a un lado de la inferior o sea son dos V...



{
int rij, kol;
  for (rij=1; rij<=20;rij++)
  {
     for (kol=1; kol<=20;kol++)
      if (rij==kol)
      {printf ("\xDB");}
        else
        {printf (" ");
   }
      for (kol=1; kol<=20;kol++)
      if (kol==21-rij)
      {printf ("\xDB");}
        else
        {printf (" ");
   }
      for (kol=1; kol<=20;kol++)
      if (kol==21-rij)
      {printf ("\xDB");}
        else
        {printf (" ");
   }
    for (kol=1; kol<=20;kol++)
      if (rij==kol)
      {printf ("\xDB");}
        else
        {printf (" ");  
   }
   

  }
}




y ademas, deberia ser de 10 cada parte o no?


No se como resolvere eso..


espero haberme explicado bien :blink:

SteelX

  • Miembro MUY activo
  • ***
  • Mensajes: 218
    • Ver Perfil
Re: Principiante <_<
« Respuesta #1 en: Jueves 19 de Octubre de 2006, 22:27 »
0
Mejor utiliza una matriz de 20x20

la haces de char o de strings.

de esta manera

char matriz[20][20];


rellenas los espacios que vas a imprimir para formar la X, y el resto lo llenas de " " espacios vacios.

como es de 20x20 te van a a salir 400 celdas huff bastante...

espero y te sirva .
Inside the code

diego.martinez

  • Miembro MUY activo
  • ***
  • Mensajes: 297
    • Ver Perfil
Re: Principiante <_<
« Respuesta #2 en: Jueves 19 de Octubre de 2006, 23:37 »
0
no se si lo entendi bien pero si es solo dibujar las diagonales, al ser un tablero cuadrado solo tienes que rastrear las columnas y marcar el pto de arriba y de abajo...




[achtung , code spoiler] seleccionar para ver.



char matrix[20][20];

memset(matrix,' ',20*20*sizeof(char)); //ponemos toda la matrix a ' ' blancos

for (int x=0;x<20;x++)
{
matrix
  • ='x';

matrix
  • [19-x]]='x';

}



[/spoiler]