• Lunes 6 de Mayo de 2024, 15:35

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 - gonza_fs

Páginas: [1]
1
C/C++ / Re: Juego de palabras
« en: Sábado 11 de Abril de 2009, 23:59 »
Mira, creo que ya estas llevando el tema para otro lado, yo como cualquiera que lee, aporte mi opinion. Ya que mencionas la frase "hablar por hablar", podemos aclarar un par de cosas. Primero no hay que tomar todo al pie de la letra. Porque sino, yo podria decirte que no afirmaria que la pila es "volatil". Si vamos con el criterio de explicar todo bien perfectamente, esa no es la palabra correcta para describir la pila de ejecucion. Si queres podemos diferenciar entre pila y heap. La pila de ejecucion de un programa no es solo la pila como tal, sino que lleva un bloque por debajo denominado heap, que en conjunto con la pila forman todo el bloque. A eso considero yo pila de ejecucion, y tomado desde ese punto las variables globales si van en la pila de ejecucion, debajo del heap, incluso antes de arrancar el programa ya estan consumiendo memoria de ese bloque. Si consideras aparte que este bloque de ejecucion es un bloque fijo que no cambia de tamaño, se puede rebalsar. Todo esto hablamos sin saber las cuestiones de manejo del compilador.
Igual ya nos fuimos del tema, solo queria aclararte esto que creo que lo estamos viendo desde dos puntos diferentes. Solo eso, saludo.

2
C/C++ / Re: Juego de palabras
« en: Sábado 11 de Abril de 2009, 17:30 »
Quien dijo que la pila se llena solo con recursion? la pila se llena con toda la informacion de un programa. La recursion solo hace que se llene mas rapido, pero eso no significa que si no hay recursion la pila no se llene. Esto tambien depende de como administra la memoria el compilador, variables globales, estaticas, etc. La cosa es que no es solo cuestion de tirar codigo sin pensar en lo que pasa con la memoria. Por eso este tipo de problemas y otros relacionados.
Igual, lo que dije quiza no es la solucion al problema, pero solo contesto a algo que quiza no tuviste en cuenta. Saludos.

3
C/C++ / Re: C++ frente a Java
« en: Sábado 11 de Abril de 2009, 04:25 »
Hola. Bueno, creo, segun lo que fui leyendo (perdon si me equivoco), que hay mayores opiniones a favor de c++ que de java.
C++ fue creado para obtener velocidad. C++ no soporta anidamiento, por lo que en ejecucion no posee cadena estatica. Por eso la alta velocidad con respecto, no solo a java, sino a otros lenguajes.
Pero hay una gran desventaja de C++ que no se toma en cuenta, mas alla de las compilaciones, la portibilidad, etc. La gran desventaja es que C++ fue creado suponiendo que quien lo utiliza es un programador experimentado y sabe lo que esta haciendo. Por lo tanto C++ deja muchas cosas a criterio del programador, quien siendo una persona se equivoca, y comete errores que a veces es dificil de encontrar. Sino fijense la cantidad de preguntas en el foro de C++ sobre errores, con respecto a los foros de los otros lenguajes.
Ademas, con la utilizacion de punteros, C++ se convierte en un lenguaje no seguro. Cualquier direccion se puede acceder y el compilador lo permite. Por eso mucha gente experimenta problemas con su pc, al trabajar con este lenguaje.
En contra partida, como todos ya dijeron, java es mas lento, pero es porque permite los bloques anidados, aparte de la cuestion de la maquina virtual, que como es interprete, tarda mas.
Sin embargo, java es mas seguro con la cuestion de la escribilidad. Es decir, no deja todo en manos del programador. Pero, yo no diria exactamente que java no posee punteros, porque en realidad sabemos que como cualquier otro lenguaje se maneja obviamente con direcciones de memoria. Solo que este manejo de memoria esta restringido al compilador y no al programador.
Las otras ventajas/desventajas ya las dijeron antes, solo queria agregar esto. Yo sigo usando ambos, depende lo que necesite, uso C++ para trabajos simples y cosas rapidas que no necesitan muchas vueltas. Y uso java para manejo de cosas mas complejas, como hilos, graficos, applets.
Saludos.

4
C/C++ / Re: Punteros
« en: Sábado 11 de Abril de 2009, 03:35 »
Hola, bueno, del ultimo codigo que vi, noto varios errores, Usas taula y cad sin inicializar, incluso cad es un puntero a un array, no solo un array. Si creas una estructura asi te conviene hacerle un new primero: char  *cad=new char[30];
Es mas claro de esta manera. Aparte el amigo que escribio antes que yo tiene razon, llamas a los procedimientos sin nada en las estructuras, o sea, sin inicializar.
Aparte en una linea haces taula[50][30]=*cad[30], lo cual te da basura porque el contenido completo de cad esta "vacio".
Tambien vi algo como gets(taula[n]). Esta parte no se realmente como funciona de esta manera, pero se como si taula fuera un arreglo lo cual no es cierto. Aunque el gets te funcione asi, no es claro y creo eso te esta provocando confusiones entre los parametros. Espero te sirve, saludos.

5
C/C++ / Re: Juego de palabras
« en: Sábado 11 de Abril de 2009, 03:23 »
Que tal. Mira, si la solucion anterior que te dieron no resulta, el error esta dentro del do-while o dentro del segundo while. Supongo por como lo enunciaste, que el programa se te cierra solo sin advertencias ni nada. Si es asi, lo que esta pasando es que la pila de ejecucion se llena al ejecutar un bucle que no corta, y simplemente se sale. El problema puede ser tambien, debido al compilador usado. Por ahi a vos te pasa eso y en otro compilador distinto funciona. Habria que saber como maneja tu compilador el tratado de los string. Yo usando dev y builder tuve varios de estos problemas con caracteres. Espero te sirva, suerte.

6
C/C++ / Re: necesito la idea principal del algoritmo a realizar
« en: Sábado 11 de Abril de 2009, 03:11 »
Que tal. Lo de usar indices es la idea mas eficiente, creo yo tambien. No se si sabes algo sobre estructuras de bases de datos, cosas como arboles b y b+, tablas de hash, gridfiles, etc, entre los cuales estan incluidos los indices, que son los mas basicos para buscar registros en un archivo. Pero solo te hablo de esto si conoces estas estrcucturas, sino simplemente haz caso a los indices.
Lo que se suele hacer a veces es utilizar una clase para buscar. Por ejemplo, esto se hace en java para ordenar registros por varios campos. Podrias usarlo tambien para buscar.
La idea basica seria crear una clase busqueda o buscar con los parametros necesarios para buscar y un parametro de "tipo busqueda" como sigue:

class busqueda{
string campo         //campo de busqueda por ejemplo, el titulo, por decir alguno.
....                       //otros parametros que quiza se requieran dentro de la clase.
busqueda siguiente  //este contendra el siguiente campo de busqueda, si es que el titulo no esta especificado.

Bueno, no me extiendo mas porque quiza no te interese esta idea, sin embargo es algo tambien eficiente y con costo muy bajo. Cualquier cosa me preguntas y te digo mas detalles si esto te interesa. Suerte.

7
Java / Re: Programar juego con JCreatro
« en: Viernes 6 de Marzo de 2009, 01:57 »
Por ahi, tenes razon. Pero yo hablo a traves de mi experiencia propia. En mi opinion, habiando arrancado trabajos de ambas maneras, me ha resultado mas facil arrancando por la parte grafica. Y no solo por el hecho de que se toma menos tiempo en terminar esa parte, sino que al momento de probar algo, se gana tiempo probando sobre un motor grafico, que probando a mano, solo compilando o con ayuda de un txt. Bueno, igual esas sos preferencias de cada programador, no? Conozco a gente que como vos, arranca el diseño del juego antes y les va mejor asi. A mi me ha resultado mas eficiente empezando por los graficos.

8
Java / Re: Programar juego con JCreatro
« en: Jueves 5 de Marzo de 2009, 17:13 »
Que tal, lamento contradecir al amigo que te contesto primero, pero en mi experiencia conviene hacer el motor grafico primero, y luego incorporar el comportamiento.
Ya que la parte grafica es mas facil y no lleva tanto tiempo. Tambien, sera mas facil luego adaptar el comportamiento del juego a dicho motor.
Para las clases, ya tenes un tablero, y diversas fichas. Lo unico complicado en estos juegos es la inteligencia de la "maquina", si es que tu juego lo requiere.

Suerte.

9
Java / pausar la ejecucion
« en: Martes 15 de Julio de 2008, 21:26 »
Hola, quiero saber como poner una pausa a la ejecucion de un programa utilizando el eclipse. Por ejemplo, en c++ se puede hacer system("pause"), entonces por linea de comandos se lee "presionar una tecla para continuar...". No se si hay algo parecido en eclipse.
Es que tengo un .bat que guarda un programa hecho en eclipse (.jar), que simplemente muestra "Hola a todos", por lineas de comando, y como no tiene ninguna pausa, el ejecutable se cierra inmediatamente.

10
C/C++ / Re: Sistemas tres ecuaciones
« en: Jueves 10 de Julio de 2008, 19:22 »
Hola, que tal. Mira, antes que nada, fijate que al momento de cargar las variables por pantalla, estas cargando C2 y R2, dos veces. Por ahora es lo unico que puedo decirte, ya que sinceramente no le he prestado atencion al resto del codigo. Si pudieras explicar un poquito como funciona o comentar algo del mismo, seria de mas ayuda. Suerte.

11
C/C++ / Re: Problemas con los registros
« en: Jueves 10 de Julio de 2008, 19:00 »
Que tal, no estoy seguro, pero uno de tus problemas puede ser este:

strcpy(Registro.Cod," ");
strcpy(Registro.Cod,Codigo);

Supongo que lo que intentaste hacer, fue poner el codigo de registro en vacio para luego copiar el nuevo codigo. Pero en este caso has puesto un espacio entre las comillas dobles. Proba poniendo "" (comillas dobles sin espacio), o bien "" (caracter nulo). Generalmente este tipo de problemas se deba a que en algun momento no se estan detectando los caracteres nulos o de cierre.
Podes hacer una prueba ingresando "a mano" el caracter "", al final de cada char* que hayas creado. A ver si esto resuelve tu problema. Esto es ineficiente y no se deberia realizar asi, pero solo te lo recomiendo a modo de prueba a ver si ya no te devuelve basura en donde corresponda.

12
C/C++ / Re: una consulta.. sobre un algoritmo
« en: Miércoles 9 de Julio de 2008, 22:13 »
Hola, que tal. Supongo que la respuesta es en base a lo que dijo Iganguli. En parte tiene razon. Ahora como debes usar un arbol, la gracia esta en buscar a la derecha o la izquierda de la raiz, segun si el elemento que buscas es mayor o menor al elemento pivote o del medio. Ese elemento pivote de la lista, es tu raiz. A partir de ahi el algoritmo mas facil para continuar armando el arbol, es la recursion. Pensa que el elemento del medio de la lista es la raiz, la sublista izquierda resultante, es tu subarbol izquierdo, y lo mismo con la sublista derecha, y asi sucesivamente.

13
C/C++ / Re: Archivos Y Arrays
« en: Lunes 23 de Junio de 2008, 02:54 »
Lo que dije fue que no necesito como leer de un archivo, porque podria prestarse a confusiones y posiblemente alguien contestaria como crear un archivo y leerlo.
Lo que necesito es lo que vos por ahi entendiste como que no necesito. Lo que busco es exactamente eso, leyendo de un archivo. O, alternativamente, leyendo de un archivo a un array y de ese array a la solucion final como la busco. Pero en un principio es exactamente como explique, leyendo de un archivo y que la solucion quede como el ejemplo que puse.
Disculpas si lo que escribi antes esta medio confuso.

14
C/C++ / Archivos Y Arrays
« en: Domingo 22 de Junio de 2008, 02:21 »
Que tal, alguien sabe si existe algun metodo para leer un registro de un archivo, donde cada valor esta delimitado por el caracter ";", de manera tal que se almacenen los datos en un arreglo?
Les doy un ejemplo de lo que busco:

Tengo un archivo "datos. dat" donde tengo registros del tipo:

Nombre, Apellido, DNI, (por poner un ejemplo cualquiera de registro). Entonces tendre datos como:

Carlos;Gomez;31185447
Jose;Perez;21456644
...

Y lo que quiero es llevar la info de, por ejemplo, el primer registro, a un arreglo de la siguiente manera:
Digamos que tengo un arreglo de strings p.
Y quede asi: p[0]="Carlos"
                   p[1]="Gomez"
                   p[2]="31185447", y lo mismo con el registro siguiente.
Aclaro que no necesito como leer de un archivo, sino que busco alguna funcion de c o c++ predefinida que pueda realizar algo parecido al ejemplo que di.
Es que trabaje un poco con PHP y existe un metodo implode que realiza esto y con explode se realiza la operacion inversa. Pero no encuentro algo parecido en c/c++.
Si alguien sabe se lo agradezco.

15
C++ Builder / Re: Imagenes En C++ Builder
« en: Miércoles 28 de Noviembre de 2007, 19:16 »
Ah, ya que estoy, te pregunto a vos o a los que te hayan contestado, si es que alguno sabe, como crear y pintar un buffer de imagenes?; porque lo he preguntado antes y no me contesto nadie. Ja ja ja, medio tramposo preguntar asi pero es que probe bastante y no me sale.

16
C++ Builder / Re: Imagenes En C++ Builder
« en: Miércoles 28 de Noviembre de 2007, 19:12 »
Hola, yo lo logre de esta manera:

TJPGImage* i=new TJPGImage();
i->LoadFromFile("nombre de la imagen.jpg");
TImage->Picture=(TJPGImage*)i;

Y no tenes que hacer ningun show() ni nada parecido, solo lo carga y lo abre automaticamente. Espero te sirva, saludos

17
C++ Builder / Gif Animados
« en: Miércoles 14 de Noviembre de 2007, 04:03 »
Hola, alguien sabe como trabajar con objetos gif en builder 6? cargarlos, modificarlos y/o demas. Gracias

18
C++ Builder / Re: Movimiento Sobre Formularios
« en: Miércoles 7 de Noviembre de 2007, 23:31 »
Tu codigo funciona bien en builder 6, pero no se como utilizarlo o para que me puede servir. Solo logre que al hacer click se mueva la ventana de control, pero no es lo que necesito. Yo lo que necesito es, por ejemplo, que al cargar una imagen de una ficha o al pintar alguna figura, que al mover tal objeto no se produzca parpadeo. Si con este codigo que pusiste se puede te pido de favor que me lo aclares un poco. Igual gracias por contestarme.

19
C++ Builder / Movimiento Sobre Formularios
« en: Jueves 1 de Noviembre de 2007, 23:22 »
Hola, estoy probando como hacer mover un objeto sobre un formulario (una imagen, un circulo, etc.). Mi problema es que no se como hacer para que no se produzca parpadeo. En java, se que se pueden cargar las coordenadas, por donde se debe mover el objeto sobre el formulario, en una especie de buffer y despues se dibuja este buffer completo. Entonces, no se nota el parpadeo que hay cuando el objeto cambia de de un pixel a otro.
Si alguien sabe como hacer esto en c++ (estoy usando builder 6), que me ayude porque estuve buscando y no se como hacer para sacar el parpadeo y es peor cuando el delay con que se mueve el objeto es muy poco.

20
Inteligencia Artificial / Re: Ayuda Urgente
« en: Sábado 29 de Septiembre de 2007, 07:48 »
primero tendrias que comentar un poco que es lo que intentaste hacer usando back y aproximaciones, que no te dio resultado. Despues, se podria ver como encontrar una solucion optima a lo que buscas.

21
C++ Builder / Problema Con Formularios
« en: Sábado 22 de Septiembre de 2007, 23:04 »
Estoy teniendo problemas con los formularios en C++Builder 6. No se como hacer para que, al pasar una ventana de otro programa sobre mi formulario o bien cuando minimizo el form y lo vuelvo a restaurar, no me borre las cosas. Y si la unica manera de solucionarlo es repintando, en que momento debo hacerlo?
Si alguien sabe le agradezco su respuesta.

22
C/C++ / Re: Ejecutables Portables
« en: Domingo 16 de Septiembre de 2007, 04:32 »
No se si me explique bien. Segun me pidieron yo tengo que hacer un ejecutable que funcione en cualquier maquina. Esto usando el compilador visual studio 2005 o builder 6. Se que para que sea asi, debe haber alguna opcion que debo tildar o alguna opcion que debo cambiar a los compiladores para que el codigo fuente se compile en modo estatico, que es lo que me permitira que el mi proyecto se ejecute bien en cualquier lugar sin que haya visual o builder instalado.
Yo hice un setup para un proyecto en visual. Y te dice mas o menos que poner para que el paquete de instalacion ande. El setup anda y me instala el ejecutable que yo hice para un juego, pero me dijeron que el codigo fuente tiene que estar compilado static.
No se si me explico bien, debe ser una pavada que debo agregar en mi codigo fuente o algo que cambiar al momento de compilar.

23
Java / Ejecutable Portable En Eclipse
« en: Sábado 15 de Septiembre de 2007, 20:08 »
Necesito si alguien puede decirme como realizar un ejecutable portable utilizando eclipse. Me dijeron que hay que agregar una serie de archivos al proyecto para que se produzca el .exe y ande en cualquier maquina, pero no se muy bien como es el tema. Agradezco a quien me responda.

24
C/C++ / Ejecutables Portables
« en: Sábado 15 de Septiembre de 2007, 20:04 »
Quiero saber como compilar estatico utilizando visual studio 2005, para crear un ejecutable portable. Tuve que entregar un trabajo y no pude hacer un ejecutable que funcione en cualquier maquina, tenga o no visual studio 2005 instalado. Si o si me pedia Framework.net y lo inclui en el paquete de instalacion que hice, pero no encontre la forma de compilar el proyecto en estatico. Si alguien sabe le agradezco.
Otra cosa, ahora necesito hacer un proyecto en borland c++ builder 6 y tambien necesito que sea portable. Conozco poco este compilador asi que no se como se hace.

Si alguien me ayuda con ambos problemas, muchas gracias.

Páginas: [1]