• Sábado 20 de Abril de 2024, 10:12

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - •Parra

Páginas: [1]
1
C/C++ / Re: Conecta 4 c++
« en: Jueves 27 de Enero de 2011, 12:53 »
Cita de: "m0skit0"
Cita de: "•Parra"
Si estás programando en C++, quizás sea un poco más complicado que hacerlo en C, en C, para los principiantes suele ser facil.
Bueno, es cuestión de entender mínimamente la POO. En cuanto se entiende, es más fácil, más estructurado y más limpio en C++.
Eso si, pero al que le han empezado enseñado a programar en estructurado, cambiar el chip y pensar en objetos, no es facil.

2
C/C++ / Re: Conecta 4 c++
« en: Miércoles 26 de Enero de 2011, 22:09 »
Ok, has buscado lo más sencillo entonces..

Si estás programando en C++, quizás sea un poco más complicado que hacerlo en C, en C, para los principiantes suele ser facil.

Bueno, primero de todo has de plantearte esto, como puedo hacer un 4 en ralla?

1) Verticalmente
2) Horizontalmente
3) En diagonal, de izquierda a derecha, y de derecha a izquierda.

Ahora, hay que ingeniarse un alogaritmo que chequee, cuando tengo una ficha mia, si tengo una ficha en algun cuadrado a todo alrededor mio (arriba, abajo, derecha, izquierda y diagonales), y si ento uno, que chequee recursivamente en esa dirección, y luego, en la opuesta. Si la suma total de fichas encontradas mias es > 4, entonces ya tenemos 4 en ralla.

Luego, a la hora de jugar vas a tener que hacer que va a pasar cuando el usuario ponga la columna que desea meter la ficha.

Lo mejor que puedes hacer, es hacer un programita sencillito, para crear el primer alogaritmo, y luego lo de despues esta chupado, usa printf, si vas a hacerlo todo por consola, y listo (;

PD: Para ayudarte, puedes hacer algo muy simple, si estás en C++, crea una clase que se llame "Slot", y entonces le pones una variable que sea Tipo, y que pueda variar entre estos tres tipos:

0 = vacío
1 = ficha jugador A
2 = ficha jugador B

3
C/C++ / Re: Conecta 4 c++
« en: Miércoles 26 de Enero de 2011, 21:26 »
Primero de todo, has pensado hacerlo multiplataforma? O no te importa?
Segundo, preferirías hacerlo en opengl, o en su caso, sdl (si te parece más facil), o vas a usar algo como QT, o alguna otra libreria (alguna que te proporcione controles gráficos)?
Tercero, vas a hacerlo online, es decir, cliente y cliente se conectan entre si?, O vas a hacer que el duelo sea contra la máquina, o offline, tu contra un compañero?

Cuando tengas esto claro, entonces podemos seguir :P

4
C/C++ / Re: Como saber si una variable contiene octetos??
« en: Miércoles 26 de Enero de 2011, 12:49 »
Cita de: "Mc_Gregor"
Aun mejor queda asi:

      ACE_TCHAR* ior_match = ACE_OS::strstr (string_recibido, ACE_TEXT("IOR:"));
          if (ior_match) {
                             cout << "Este string contiene el IOR: " << string_recibido << endl;
                    }

.
.
.
.
. Curso normal del programilla..
 :comp:   Seguimos..
Perfecto, si tu libreria te da soporte para strings, mucho mejor usarlo, que no el genérico, asi te olvidas de problemas de compatibilidad.

5
C/C++ / Re: Como saber si una variable contiene octetos??
« en: Martes 25 de Enero de 2011, 21:25 »
Cita de: "Mc_Gregor"
CORBA es una arquitectura para peticiones entre objetos distribuidos, TAO es una implementacion de CORBA... Si Parra, estoy desarrollando un sitema distribuido: Servicio, Servidores y Clientes que interactuan entre si. Utilizo como una herramienta de apoyo la librería librdf que es para parsear documentos RDF, nodos, tripletas, etc.. Osea, en síntesis un sistema distribuido ontológico. :)

Saludos y gracias de nuevo!!...
Interesante!

De nada hombre, nos vemos!

6
C/C++ / Re: Pregunta sobre listas
« en: Martes 25 de Enero de 2011, 21:22 »
Cita de: "UnMandrango"
He estado dando vueltas al tema... y creo que no voy por el camino correcto.

Me voy a explicar, donde yo trabajo tienen un game engine propio, este tiene su propio lenguaje script y lo interpreta en tiempo de ejecución. Me he acostumbrado mucho a este lenguaje y me gustaría utilizar algunas características de él en C++/SDL para crear mis juegos. Y para empezar lo primero que necesitaría es tener un tipo de variable global: Todas las variables pueden ser enteros, flotantes, booleanos, cadenas o cualquier objeto. Es algo así como un tipo de variable puntero pero que puede apuntar a cualquier tipo u objeto y acceder a sus propiedades o métodos.

Luego están las listas, aquí puedo crear listas que contengan todo tipo de objetos diferentes, pero claro, realmente quizás todo es el mismo objeto "puntero global". Incluso la lista seria un puntero porque se pueden anidar. Así si seria fácil.

Yo no puedo acceder al código de ese motor para ver como esta hecho por dentro. Por eso pregunto, es posible crear algo así en C++?

Se puede guardar en una variable el typeid de un objeto para luego castear usando esta variable? Se puede castear punteros void a punteros objeto sin saber el tipo, solo su tamaño?

Gracias!  :hola:
Es que depende de lo que quieras hacer.. a ver, lo más practico y reutilizable que se me ocurre para un usuario, de hacer una lista para poder guardar diferentes tipos de variables, o estructuras dentro es esto:

(Codigo en C)
Código: C
  1.  
  2. #define LIST_TYPE_INT      1
  3. #define LIST_TYPE_FLOAT 2
  4. #define LIST_TYPE_...
  5.  
  6. struct Node
  7. {
  8.        int type; // tipo de datos
  9.        void * data; // datos
  10. };
  11.  
  12. #define LIST_MAX_SIZE 0xFF
  13.  
  14. struct Node List[LIST_MAX_SIZE];
  15.  
  16. // Ahora, cuando quieras guardar algo en el array, puedes hacer funciones de este tipo
  17. int PutInt(int value)
  18. {
  19.      // Busco un slot libre
  20.      int i;
  21.      for (i = 0; i < LIST_MAX_SIZE; i++)
  22.      {
  23.            if (List[i].Type == 0) // recuerda, que deberias de iniciar la lista..
  24.                   break;
  25.      }
  26.      
  27.      // guardamos el int
  28.      // ...
  29.  
  30.      // recuerda de asignar el type
  31.  
  32.      return i; // devolvemos la dimension
  33. }
  34.  
  35. // luego tendrias una funcion inversa
  36. int GetInt(int slot)
  37. {
  38.       // retornarias los datos..
  39. }
  40.  
  41.  

Lo bueno de usar una variable para indicar el type, es que luego podrias usar algo tipo "parser", y sacar los datos rapidamente.. De todos modos me imagino que con C++ podrás hacerlo mucho más facil y sencillo gracias a OOP, por ejemplo, usando templates, por ahi te vendrán de perlas.. pero a mi se me resiste un poco OOP :P

De todos modos.. creo que estás iendote por las ramas, cual es el sistema 'general' que quieres realizar?

7
C/C++ / Re: Como saber si una variable contiene octetos??
« en: Martes 25 de Enero de 2011, 19:57 »
Cita de: "Mc_Gregor"
Si, magnifico Parra... Esa es la única opción que la veo ya que el string varia siempre, pero el "IOR:" nunca.. Ahora me toca ver si ACE posee alguna API similar a tu código :) ACE y TAO CORBA lo maximo!!.. Recomendado para aplicaciones distribuidas :)

Saludos y Gracias por todo!!!...
Que vendria a ser ACE y TAO COBRA? Nunca en mi vida lo he escuchado xD

Si tienes alguna otra duda, no dudes en preguntarla.

Otra cosa, que haces para "parsear" la parte de despues de "IOR:"? O alguna libreria que estás usando ya se encarga de hacerlo?

8
Inteligencia Artificial / Re: IA + Aeronáutica?
« en: Martes 25 de Enero de 2011, 19:54 »
Buf.. no tengo ni idea, es algo bastante concreto lo que estás buscando tu. Pero de todos modos, en que aspecto es beneficiosa la IA para esa parte? Simuladores.., condiciones ambientales o.. torreta de control? xD Más creo yo que seria interesante para la ultima.

Si buscas algo gnu/gpl, o alguna licencia similar, puedes revisar en SourceForge, o quizás en Google code.

9
C/C++ / Re: Problemilla con Divide y Venceras?
« en: Martes 25 de Enero de 2011, 19:48 »
Cita de: "ProfesorX"
Cita de: "•Parra"
te recomiendo la versión Professional, si no quieres gastarte dinero, puedes bajarlo de algun lado

Eso mi estimado amigo es pirateria y en este foro no fomentmos la pirateria, asi que si no tienes dinero  para comparte la version profesional, te recomiendo al igual que Geo, bajar la verion Express, que no le pide nada a la profesional, lo mismo que haces en la profesional lo hace la version Express, el generador de codigo es el mismo en las dos versiones, en realidad la profesional solo incluye ciertas conveniencias a los programadores profesionales, como por ejemplo tener en una sola solucion proyectos de Basic, C++ Y C#, conexion y creacion de bases de datos de cualquier manejador de bases de datos utiliando el IDE (las versiones express, solo admiten creacion desde el IDE de bases de datos de SQL Server), depuracion remota, y algunas otras cosas, pero que en realidad no son tan indispensables, de hecho, microsoft al principio pensaba cobrar por las versiones express, pero al final decidio que fuera gratuito, beneficiando a todos los programadores y en general a los estudiantes, ya que es raro que un estudiante tenga los recursos para comprar una version profesional.

Yo mismo utilizo la version Express, y te dire que es fabulosa.

Saludos :)
Está bien, perdonen, no tenia idea.

Yo uso Express.. pero a veces, cuando tengo algún error de memoria un poco complicado, Express me dice "hay un error", pero no me dice exactamente que error, o donde está, y tengo que adivinarlo, aunque en el fondo es un poco mejor asi, porque aprendo a no hacerlos.. ya que cuestan repararlos :P

10
C/C++ / Re: Como saber si una variable contiene octetos??
« en: Martes 25 de Enero de 2011, 19:46 »
De acuerdo, entonces es muy facil, te dejo la función, ok?

Código: C++
  1.  
  2. bool CheckIOR(const string str)
  3. {
  4.    if (str.substr(0, 3) == "IOR")
  5.    {
  6.          // en el caso de que los tres primeros caracteres sean igual a IOR, devolvemos true
  7.          return true;
  8.    }
  9.  
  10.    return false;
  11. }
  12.  

Por el parametro tienes que pasar el string completo, y la función ya lo chequea, acuerdate de poner en el .hpp, o .h (como prefieras), el include este:
Código: C++
  1. #include <string>
  2.  

11
C/C++ / Re: Problemilla con Divide y Venceras?
« en: Martes 25 de Enero de 2011, 17:51 »
Cita de: "Comodoro"
Geo  es por Mi Cuenta, solo por Curiosidad. Deja probar con el Visual C++ haber que tal. Comparo y decido con cual quedarme!
El Express es la versión gratuita, pero yo te recomiendo la versión Professional, si no quieres gastarte dinero, puedes bajarlo de algun lado que seguro que lo encuentras.

Sobre tu error.. deberia de ver el proyecto, parece algun tipico error "absurdo".. de algun descuido. Porque los codigos que has puesto al principio, no hay ningun error.

12
C/C++ / Re: Como saber si una variable contiene octetos??
« en: Martes 25 de Enero de 2011, 17:46 »
Quieres saber si tu string contiene otro string que es estatico siempre, dentro de el, independientemente del tamaño que sea el primer string. Es eso no?

Lo quieres en C o en C++?

PD: No se que es "un IOR de tipo COBRA"..

13
Dudas informáticas / Re: ¿SDK vs EID?
« en: Martes 25 de Enero de 2011, 17:40 »
El SDK normalmente también incluye toda la documentación del software..

14
OpenGL / Re: Gl.glScaled altera los materiales
« en: Martes 25 de Enero de 2011, 07:21 »
Porque pones Gl.glScaled(0.4, 0.4, 0.4); antes de glPushMatrix, y no antes de glTranslated?

15
OpenGL / Re: textura 3D - pedido
« en: Martes 25 de Enero de 2011, 07:18 »
Te olvidaste de linkear la libreria de opengl, o directamente no la tienes instalada..

Que compilador estás usando?

16
OpenGL / Re: guardar RGB de un jpg
« en: Martes 25 de Enero de 2011, 07:12 »
Quieres saber la mejor forma.. o ¿no sabes como hacerlo?

Que es lo que quieres hacer?

Para la segunda parte, mira como lo hacen aqui:
stackoverflow.com/questions/867653/how-to-implement-grayscale-rendering-in-opengl

Páginas: [1]