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

 

 


Tema destacado: Tutorial básico de Quickjs


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


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: tableros
« Respuesta #10 en: 8 Marzo 2014, 18:46 pm »

Interesante la simplificación de leosansan, ventajas del trabajo en equipo
.................................................
Ahora otra vez leo, me parece interesante tu simplificación del código, pero explícamente la aritmética usada de 12, 18, 36, etc ..... No entiendo esas fórmulas, y creo que también hubiera sido bueno comentariar esa explicación en el programa, los demás no somos adivinos jejejeje (broma)


¿Es una coña,no?.

Por si acaso simple cuestión de mates ,,,,sólo te contaré que se corresponden con posiciones centrales de los espacios en blanco, ni a la derecha ni a la izquierda de las paredes laterales, centrados ..... haz números ..... siempre que a mi no se me haya ido el baifo !!!. No olvides que se trataba de no hacerle la tarea al que inicio el tema, así que algo de oscurantismo es inevitable.


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



.


En línea

Yoel Alejandro

Desconectado Desconectado

Mensajes: 254



Ver Perfil WWW
Re: tableros
« Respuesta #11 en: 12 Marzo 2014, 04:20 am »

Pero indistintamente, lo cortés no quita lo valiente, siempre es bueno comentariar al menos a qué refieren las fórmulas aunque no se de una explicación detallada. P.ej.: posiciones centrales de las casillas.

Ya sabes, documentar el código para que sea más fácil de mantener por otra persona o por tí mismo en el futuro. Una vez leí un chiste de programadores que el código más odiado del mundo puede llegar a ser ........ tu propio código (de 6 meses atrás). Por que ya no te acuerdas de qué hacía ni como, jajajaja

espero no lo tomes a mal, saludos!!!


En línea

Saludos, Yoel.
P.D..-   Para mayores dudas, puedes enviarme un mensaje personal (M.P.)
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: tableros
« Respuesta #12 en: 12 Marzo 2014, 04:46 am »


Te lo repito por n-ésima vez, se trataba de resolver un problema pero no de explicarlo, ya que el autor del tema no había puesto ni una misera línea de código, de ahí el cierto oscurantismo. ¿Te imaginas que copie mi código y al entregarlo a su profesor este le pregunte el significado de esos números?  :laugh: :laugh: :laugh:

Otra cosa distinta es "mi" código, el que yo me guardo, donde va una descripción del problema que se plantea y diversa notitas aclaratorias, pero que no pongo  cuando lo cuelgo en el foro. ¡¡¡Que se lo curre un poquito!!!,.....


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


En línea

amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: tableros
« Respuesta #13 en: 12 Marzo 2014, 11:35 am »

"Yo, en particular, estoy muy contento con tus aportes ya que la mayoría de los expertos lo son más de C++ y a mí me interesa más el C puro y duro"

Jejeje, pues sí, es un dicho que entre más bajo el nivel más duro es el programador, jeje. De hecho me impongo como costumbre personal tratar de hacer los programas en C puro, salvo que sea estrictamente necesario usar C++ (por ejemplo si se requieren clases).
Nunca es estrictamente necesario usar C++, incluso C se puede orientar a objetos si se quiere.

Jejeje, pues sí, es un dicho que entre más bajo el nivel más duro es el programador, jeje.
Pero no mejor ;)

Otra cosa distinta es "mi" código, el que yo me guardo, donde va una descripción del problema que se plantea y diversa notitas aclaratorias, pero que no pongo  cuando lo cuelgo en el foro. ¡¡¡Que se lo curre un poquito!!!,.....
Me intriga lo que guardas en esa carpeta... Deben ser GB y GB de códigos Oo

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
JonaLamper


Desconectado Desconectado

Mensajes: 394



Ver Perfil
Re: tableros
« Respuesta #14 en: 12 Marzo 2014, 11:37 am »

Creo que lo que el usuario decía, era que dentro de cada celda van a ir 3 fichas. Algo así:


 ┌─────┬─────┐
 │ ███ │  ███ │
 ├─────┼─────┤
 │ ███ │  ███ │
 └─────┴─────┘

Y a su vez, cuando hayas dibujado ese tablero 8x8 con sus respectivas fichas, debes relacionar esas fichas con un array bidimensional de forma que cada 3 fichas sea una posición del array. Lo cual me imagino será un array del tipo:  typedef  tipo_array  nombre_array [8][8];

Pd: ups... salió mal el dibujo  :-( bueno, creo que se entiende  ;D
« Última modificación: 12 Marzo 2014, 12:15 pm por JonaLamper » En línea

Utilizar palabras para hablar de palabras es como utilizar un lápiz para hacer un dibujo de ese lápiz sobre el mismo lápiz.
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: tableros
« Respuesta #15 en: 12 Marzo 2014, 22:43 pm »

Creo que lo que el usuario decía, era que dentro de cada celda van a ir 3 fichas. Algo así:


 ┌─────┬─────┐
 │ ███ │  ███ │
 ├─────┼─────┤
 │ ███ │  ███ │
 └─────┴─────┘


¿Algo así?:

Citar
┌───┬───┬───┬───┬───┬───┬───┬───┐
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
├───┼───┼───┼───┼───┼───┼───┼───┤
│███│███│███│███│███│███│███│███│
└───┴───┴───┴───┴───┴───┴───┴───┘

.................................
Me intriga lo que guardas en esa carpeta... Deben ser GB y GB de códigos Oo ...............................


Pues estas en lo cierto, son varios GB de códigos, nunca sabes lo que puedes reaprender de ellos. Es como releer un libro, siempre encuentras cosas a mejorar y/o recordar.


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


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

JonaLamper


Desconectado Desconectado

Mensajes: 394



Ver Perfil
Re: tableros
« Respuesta #16 en: 13 Marzo 2014, 00:36 am »

Eso es leo. Recuerdo ese ejercicio. La cosa era como referenciar cada bloque de 3 fichas a una posición de un array bidimensional.

Una idea podría ser que cada bloque de 3 fichas sea un string que almacene el código ascii que corresponda y después guardar dicho string en un array.

¿Sería una buena idea?
En línea

Utilizar palabras para hablar de palabras es como utilizar un lápiz para hacer un dibujo de ese lápiz sobre el mismo lápiz.
leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: tableros
« Respuesta #17 en: 13 Marzo 2014, 02:47 am »

Eso es leo. Recuerdo ese ejercicio. La cosa era como referenciar cada bloque de 3 fichas a una posición de un array bidimensional.

Una idea podría ser que cada bloque de 3 fichas sea un string que almacene el código ascii que corresponda y después guardar dicho string en un array.

¿Sería una buena idea?

No me queda clara la idea. Tendrías que poner el enunciado completo.

Pero por lo que capto, eso de referenciar me suena a algo como esto:



Citar

┌───┬───┬───┬───┬───┬───┬───┬───┐
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
├───┼───┼───┼───┼───┼───┼───┼───┤
│█1█│█1█│█1█│█1█│█1█│█1█│█1█│█1█│
└───┴───┴───┴───┴───┴───┴───┴───┘
Process returned 0 (0x0)   executi

En quote no queda bien, se ve mejor en una captura de pantalla:


Y eso se logra sencillamente con una condición en la linea lateral y las intermedias:

Código
  1.           if ((j+2)%4==0)
  2.            printf("1");
  3.          else
  4.            printf("%c",a1[j]/* o a3[j] en donde toca*/);
  5.  

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



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

JonaLamper


Desconectado Desconectado

Mensajes: 394



Ver Perfil
Re: tableros
« Respuesta #18 en: 13 Marzo 2014, 22:43 pm »

No lo tengo, pero conseguí una imagen del tablero completo:



En primer lugar pido perdón porque el siguiente código, es el código con la menor eficiencia que he visto en mi vida (ignorad los typedef que son para usarlos más tarde).

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <windows.h>
  4. using namespace std;
  5.  
  6. const int FILAS = 8;
  7. const int COLUMNAS = 8;
  8.  
  9. const char ascii218 = 218;
  10. const char ascii196 = 196;
  11. const char ascii194 = 194;
  12. const char ascii179 = 179;
  13. const char ascii195 = 195;
  14. const char ascii197 = 197;
  15. const char ascii192 = 192;
  16. const char ascii193 = 193;
  17. const char ascii217 = 217;
  18. const char ascii191 = 191;
  19. const char ascii180 = 180;
  20. const char ascii219 = 219;
  21.  
  22. typedef enum {magenta, amarillo, azul, verde, neutro} tFicha;
  23. typedef tFicha tTablero[FILAS][COLUMNAS];
  24.  
  25.  
  26. int main() {
  27.  
  28. //Linea superior
  29. for (int i = 0; i <= 33; i++) {
  30. if (i == 0) {
  31. cout << ascii218;
  32. }
  33. else if (i == 33) {
  34. cout << ascii191 << endl;
  35. }
  36. else if (i%4 == 0) {
  37. cout << ascii194;
  38. }
  39. else {
  40. cout << ascii196;
  41. }
  42. }
  43. //Lineas intermedias
  44. for (int j = 0; j < 7; j++) {
  45. for (int i = 0; i < 33; i++) {
  46. if (i%4 == 0) {
  47. cout << ascii179;
  48. }
  49. else {
  50. cout << ascii219;
  51. }
  52. }
  53. //hacemos un saltito de linea
  54. cout << endl;
  55. for (int i = 0; i < 33; i++) {
  56. if (i == 0) {
  57. cout << ascii195;
  58. }
  59. else if (i == 33) {
  60. cout << ascii180 << endl;
  61. }
  62. else if (i%4 == 0) {
  63. cout << ascii197;
  64. }
  65. else {
  66. cout << ascii196;
  67. }
  68. }
  69. //hacemos otro saltito de linea
  70. cout << endl;
  71. }
  72. //Linea inferior
  73. for (int i = 0; i < 33; i++) {
  74. if (i%4 == 0) {
  75. cout << ascii179;
  76. }
  77. else {
  78. cout << ascii219;
  79. }
  80. }
  81. //hacemos un saltito de linea
  82. cout << endl;
  83. for (int i = 0; i < 33; i++) {
  84. if (i == 0) {
  85. cout << ascii192;
  86. }
  87. else if (i == 33) {
  88. cout << ascii217 << endl;
  89. }
  90. else if (i%4 == 0) {
  91. cout << ascii193;
  92. }
  93. else {
  94. cout << ascii196;
  95. }
  96. }
  97. return 0;
  98. }

Ahora bien, tengo dos problemas... el primero es que no sé cómo solucionar la parte de la derecha de la tabla (las "sobras" que salen remarcadas en rojo). Y el segundo, es hacer algo más eficiente ese código (realmente lo importante es que funcione, pero si además es eficiente sería más mejor  ;D).



Un saludo y si a alguien se le ocurre cualquier cosa por pequeña que sea, no dude en ponerla ^^
« Última modificación: 14 Marzo 2014, 00:46 am por JonaLamper » En línea

Utilizar palabras para hablar de palabras es como utilizar un lápiz para hacer un dibujo de ese lápiz sobre el mismo lápiz.
amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: tableros
« Respuesta #19 en: 14 Marzo 2014, 01:03 am »

La eficiencia es buena, como mucho se puede mejorar creandote un vector fila y ir imprimiendo filas del tirón.

Aparte de eso. El código podría ser más claro. Y sobre todo más genérico (para cualquier tamaño del tablero).

Ah, y los pegotes se puede resolver pintandolos al reves (primero el pegote y despues el cuadrado).
« Última modificación: 14 Marzo 2014, 01:30 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
Páginas: 1 [2] 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Tableros super mario « 1 2 3 4 »
Juegos y Consolas
Castiblanco 37 12,948 Último mensaje 13 Octubre 2008, 23:35 pm
por Castiblanco
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines