|
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 - Diodo
Páginas: 1 ... 25 26 [27] 28 29 30
651
« en: Jueves 30 de Diciembre de 2004, 21:35 »
Hola Busca en google por que es el tipico ejercicio que suelen poner en todas las escuelas de informatica, ingenierias , etc, seguro que encuentras mas de una version, aunque si solamente son esas operaciones las que necesitas quizas tardarias menos haciendolo tu.Si necesitas ayuda con las operaciones matematicas te echo una mano, que en ese asunto voy sobrado un saludo y feliz año
652
« en: Domingo 19 de Diciembre de 2004, 22:28 »
Hola Para leer los datos del archivo de texto puedes usar la funcion fscanf esta funcion lee distintos tipos de datos en una misma linea de texto puedes hacer un bucle como el siguiente: int uno,dos,tres; // variables int para recoger los numeros del texto FILE *puntero; puntero=fopen("texto.txt","r"); while(fscanf(puntero,"%i %i %i",&uno,&dos,&tres)!=EOF) { // dentro del bucle asignas los numeros al array de structs }
Si hay n espacios entre numero y numero basta con separar los %i del entrecomillado n espacios Espero q te funcione , chao
653
« en: Miércoles 15 de Diciembre de 2004, 11:10 »
Hola de nuevo, estoy un poco dormido y no me habia dado cuenta que es dentro de una misma clase asi q no hace falta que uses el scope esto tb funciona: void CDialogoDlg::OnButton1() { MessageBox("ejecutado boton 1"); OnButton2(); OnButton3(); }
654
« en: Miércoles 15 de Diciembre de 2004, 11:07 »
Hola Creo que lo que pides es ejecutar codigo asociado a otros botones desde un boton Es muy simple, solamente debes llamar al metodo del boton con el operador ambito asociado a la clase CDialog Este es un pequeño ejemplo en el que al pulsar un boton ejecuta el codigo de otros 2, no a la vez por q se llama a un MessageBox y hasta que no se cierre la ventana del MEssageBox no ejecuta la siguiente, pero puedes probar con otro codigo y el resultado sera el mismo void CDialogoDlg::OnButton1() { MessageBox("ejecutado boton 1"); CDialogoDlg::OnButton2(); CDialogoDlg::OnButton3(); } void CDialogoDlg::OnButton2() { MessageBox("ejecutado boton 2"); } void CDialogoDlg::OnButton3() { MessageBox("ejecutado boton 3"); }
Espero que te sirva de ayuda , un saludo
655
« en: Lunes 6 de Diciembre de 2004, 11:40 »
Totalmente de acuerdo con solocodigo y JuanK, visual c++ reune las suficientes peculiaridades como para tener un foro aparte de c++. El verano pasado tuve que hacer un juego en visual y me tuve que empollar un ladrillo para entender de que modo funcionaban las aplicaciones mfc basadas en dialogos, sdi y mdi.Ademas del manejo del entorno grafico(aunque sea muy simple) el classwizard etc, y aun me quedan cantidad de cosas por manejar Por cierto que me alegro que esteis de vuelta , despues de esos pequeños problemas que tuvisteis.Esta pagina se habia hecho ya de mis cotidianas. Un saludo  y esperemos que no vuelva a pasar (por cierto , la redireccion www.solocodigo.com tampoco funcionaba??? si es independiente de los servidores, si pasa algo la proxima vez podeis cambiar el direccionamiento a una pagina, aunq sea de host gratuito, explicando lo que pasa, es solamente una idea para evitar que la gente deje de entrar, seria una pena que eso pasara) Hasta luego
656
« en: Lunes 6 de Diciembre de 2004, 11:25 »
Hola Pues es muy facil ese problema ,porque el tamaño de un caracter es siempre 1 jejeje. Supongo que te referiras al numero de caracteres en una cadena de texto El truco de los cuadros de texto es saber manejar el UpdateData UpdateData(true) actualiza la variable asignada a la caja de texto UpdateData(false) actualiza el contenidod e la caja de texto Ademas usas mal el metodo find de las CString, este metodo tiene la siguiente estructura: find(char) // char para tu caso , peroo ademas puede llevar otros argumentos , como strings u otros como un entero q le dice a apartir de q caracter buscar La funcion find devuelve la posicion del caracter buscado en la cadena, si no lo encuentra devuelve -1 Si necesitas mas informacion puedes ir a www.msdn.comComo era un problema sencillo te lo hice en 5 minutillos, echale un ojo y si tienes alguna duda ya me contaras Te adjunto el proyecto listo para compilar Ht Luego
657
« en: Sábado 4 de Diciembre de 2004, 13:39 »
Hola ¡¡¡  Cuanto tiempo ¡¡ Pues si parece que estuvo bastante tiempo sin funcionar esto, yo intente entrar varios dias seguidos pero me canse y deje de intentarlo xd. Desde cuando esta esto operativo? Espero que hayas progresado algo en la practica, yo hice algo pero como no tenia donde mandartelo (por cierto que con tu permiso te agrego al messenger, que siempre viene bien tener una informatica a mano jeje) Creo que consigo meter lo del archivo de texto en la lista pero al mostrarlo por pantalla solo me sale el ultimo registro, a lo mejor es que esta mal la funcion de mostrar, echale tu un vistazo a ver si das con el fallo. De todas maneras este puente que tengo mas tiempo libre lo mirare de nuevo que ya ni me acuerdo lo que hice. fwrite es para grabar los registros en un archivo .DAT asi que no te sirve para meter nada en las listas, para meterlos en una lista tendras que crear tu la funcion ir leyendo del archivo de texto y meter cada registro en un nodo de la lista Este es el codigo que hice: #include <stdio.h> #include <stdlib.h> #include <string.h> struct lista { char nombre[15]; char ape1[15]; char ape2[15]; int edad; struct lista *enlace; }; typedef struct lista LISTA; int menu(void); void cogerDatosTexto(LISTA *ptr); void mostrarLista(LISTA *ptr); void main() { LISTA *principal; int eleccion; do { eleccion =menu(); switch (eleccion) { case 1: principal= (LISTA *) malloc(sizeof(LISTA)); cogerDatosTexto(principal); continue; case 2: printf("\n"); mostrarLista(principal); continue; default: printf("fin de las operaciones\n"); } }while(eleccion !=3); } int menu(void) { int eleccion; do { printf("\n menu principal:\n"); printf("1.-crear la lista enlazada\n"); printf("2.-mostrar lista\n"); printf("3.-fin\n"); printf("por favor introduzca su elecci¢n (1,2,3)->\n"); scanf("%d",&eleccion); if (eleccion<1 || eleccion>3) printf("\n ERROR - porfavor , intentelo de nuevo \n"); } while(eleccion<1 || eleccion>3); printf("\n"); return(eleccion); } void cogerDatosTexto(LISTA *ptr) { char nom[15]; char ap1[15]; char ap2[15]; int ed; FILE *puntero; puntero=fopen("TEXTO.TXT","r"); while(fscanf(puntero,"%s %s %s %i",nom,ap1,ap2,&ed)!=EOF) { strcpy(ptr->nombre,nom); strcpy(ptr->ape1,ap1); strcpy(ptr->ape2,ap2); ptr->edad=ed; ptr->enlace=(LISTA*)malloc(sizeof(LISTA)); fflush(stdin); } ptr->enlace=NULL; fclose(puntero); } void mostrarLista(LISTA *ptr) { if(ptr!=NULL) { printf("%s %s %s %i \n",ptr->nombre,ptr->ape1,ptr->ape2,ptr->edad); } return; }
Para que funcione tienes que crear el archivo de texto TEXTO.txt en el directorio raiz, que si no da error Espero que te sirva de ayuda, si logro que funcione del todo te aviso Un saludito
658
« en: Sábado 20 de Noviembre de 2004, 09:23 »
Gracias de Juank, oye y en que consola tengo que meterlo en la playstation 2 gamecube??? jejeje es broma creo que ya me salio <!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td> XCODE </td></tr><tr><td id='XCODE'><!--exc1--> #include <stdio.h>void main() { for( int= 0;i< 1001;i++) { printf( "%i gracias por la explicacion",&i); } } <!--xc2--></td></tr></table><div class='postcolor'><!--exc2--> Muy buena aplicacion Ruben,solo faltaria que alguien se enrollara y lo implementara en php para poder usarlo desde la pagina Hasta luego
659
« en: Sábado 20 de Noviembre de 2004, 08:57 »
Hola Si no sabes hacer nada, es que no estas estudiando o te piden cosas que no estudias, de verdad que no lo entiendo, es que aveces le echais mucho morro. Algo si sabras hacer asi que ponte manos a la obra Lo primero es pensar en que clases hacer, yo veo estas como las mas claras Panel o Mar: una clase con atributo Casilla matriz - y sus correspondientes metodos.
Casilla o ZonaMar:cada uno de los elementos xji de la matriz Barco: de esta clase yo heredaria las posibles clases de barco segun su tamaño buque portaviones fragata etc.Sus atributo principal seria un vector dentro de la matriz de casillas Disparo: clase que implementa un disparo sobre la matriz de casillas y luego otras clases como Jugador,Puntuacion , aunque estas pueden ser opccionales Demostrar que habeis hecho algo y venid a preguntar dudas puntuales entonces si que os ayudaran Un saludo
660
« en: Miércoles 17 de Noviembre de 2004, 19:47 »
Hola Gracias por las respuestas, me baje la aplicacion de Ruben , pero al ejecutarla se cierra la ventana sin mas .Hay que ejecutarla? estoy con S.O xp un saludo
661
« en: Miércoles 17 de Noviembre de 2004, 19:44 »
Hola Yo tambien lo instale y no me pidio nada ( de momento) Lo baje de la pagina oficial Un saludo
662
« en: Martes 16 de Noviembre de 2004, 23:51 »
Hola  Aqui estoy ¡¡ Empecemos, ....., lo de texto o binario solamente has de preocuparte a la hora de grabar o cargar archivos, es decir, segun lo que te piden debes cargarlo de uno de texto y grabarlo en uno binario. fwrite y fread creo que era para el caso de guardar o cargar estructuras enteras en un archivo, el caso que te piden yo creo que es el de un archivo de texto en el que cada dato esta separado por un espacio y cada registro por un salto de linea ejemplo Jose Hernando Gutierrez 45 Alfonso Hurtado Sanchez 22 ........... etc Para poder extraer los datos del archivo de texto he usado fprintf, aqui tienes el codigo, solo me ha dado tiempo a cogerlos e imprimirlos por pantalla, pero seria facil de meter en la lista, mañana nos miramos eso #include <stdio.h> void main(void) { // variables para meter temporalmente los datos que leemos del fichero char nombre[15]; char ape1[15]; char ape2[15]; int edad; FILE *puntero; // declaro un puntero al fichero puntero=fopen("TEXTO.TXT","r"); // asocio ese puntero al archivo y le // digo que lo voy a leer /* ahora hacemos un bucle para ir recogiendo cada linea(cada registro) con la funcion fscanf, lo que hace fscanf es leer datos segun le indica el entrecomillado y los mete en las variables que le digamos, cuando acaba con el entrecomillado salta a la siguiente linea.El bucle terminara si se llega al final del archivo EOF*/ while(fscanf(puntero,"%s %s %s %i",nombre,ape1,ape2,&edad)!=EOF) { printf("%s %s %s %i\n",nombre,ape1,ape2,edad); } fclose(puntero); // cerramos el acceso al archivo printf("\n\npulsa cualquier tecla para salir"); getchar(); }
Este es todo el codigo, como puedes ver facilillo,bueno habria que hacerle una implementacion de gestion de errores, ya que por ejemplo si no existe el archivo de texto salta un error de ejecucion Mañana estare un poco liado que tengo practicas , pero si me da tiempo miro como meterlo en una lista enlazada, aunque eso creo que tu lo dominas bastante mejor Aqui te dejo el ejecutable para que veas que funciona, puedes probar a cambiar el archivo de texto, pero respetando el orden de los datos Un saludito  animo que esto marcha ¡¡¡
663
« en: Martes 16 de Noviembre de 2004, 11:47 »
Por cierto , no penseis que esos graficos son del juego, son las cubiertas de plastico que se ponian en el televisor  esto es sencillez y no el openGl
664
« en: Martes 16 de Noviembre de 2004, 11:42 »
665
« en: Martes 16 de Noviembre de 2004, 11:24 »
Buen juego el street fighter, aunque en consola pierde mucho atractivo, ya que te cansabas en seguida de el, en arcade como habia que pagar cada partida era mas emocionante La primera consola del "mercado": Magnavox Odyssey 1972
Considerado el primer sistema de videojuegos hogareño de carácter comercial. Los componentes electrónicos eran todos analógicos, con aproximadamente 40 diodos y transistores. Como los gráficos eran muy primitivos, la consola se vendió con cubiertas de plástico para la pantalla de televisión con el fin de hacer los juegos más interesantes. Los jugadores llevaban la puntuación en papel, pues la máquina no tenía memoria. Casi nada 40 transistores y diodos , vamos lo que lleva un amplificador normalillo ahora jejeje Y lo de apuntar las puntuaciones en papel, debia ser como los bolos Alguien ha jugado con este aparatillo? ya lo dudo mucho , por lo menos aqui en españa casi ni habia llegado la tv a todas las casas.Se debio quedar para unos pocos privilegiado en EEUU Un saludo
666
« en: Lunes 15 de Noviembre de 2004, 23:40 »
Hola ¡¡ Por favor, ya lei lo que me pusiste, me puedes echar una mano, es que no se por dodne empezar, entonces que tengo que quitar todas las funciones, no están bien, además de estar mal porque falta la funcion grabar lista, el resto del codigo, esta mal. Por favor, ayudame, que estoy muy apurada. Gracias Saludos
Tranquilidad ¡¡ ante todo tranquilidad, no te pongas nerviosa que es lo peor que puedes hacer,las cosas poco a poco acaban saliendo, y si no a golpes  jeje a veces tambien salen Voy a intentar echarte una mano (con el trabajo  no pienses mal ehh  ) , pero ten en cuenta que yo tambien estudio  (poco pero estudio) y no dispongo de mucho tiempo libre. Bueno, lo primero de todo es empezar por el principio,  vaya chorradas que digo, queria decir que lo primero de todo seria recuperar los datos del archivo de texto e introducirlos en la lista.Supongo que tendras que usar fopen.......fclose, etc si no es asi dime que librerias usas para manejar archivos.De momento supongo que lo haces con la de stdlib.h (creo que era esa donde estaban), ahi o en stdio.h. Una vez hecho esto hay que implementar las funciones de manejo de la lista Mañana en el metro me leere todo el lio de manejo de archivos para refrescar la memoria, porque ultimamente solo he usado librerias MFC y las cosas se van olvidando. De todas maneras si quieres ir mirando algun libro te recomiendo el de James L.Antonakos "Programacion estructurada en C" que viene muy bien el tema de archivos y tambien viene el tema de listas enlazadas.Si no puedes conseguirlo dejame un email donde mandarte scaneado esos dos temas. Mañana por la tarde o el miercoles ya te digo si se me ocurrio algo Un saludito  y no te rindas
667
« en: Domingo 14 de Noviembre de 2004, 16:02 »
Hola a todos  Como la tecnologia avanza que da gusto, siempre es bueno echar la vista atras para recordar viejos tiempos ¿Cual fue el primer juego de ordenador,arcade o consola que jugasteis? Es dificil de recordar por eso mejor poner 3 o 4. Estos son los mios: En un arcade de los que habia antes en los bares creo que fue el gouls&goshts, la cantidad de monedas que me habre gastado en ese juego ....... En mi propio ordenador, un spectrum zx 128k con cassette incorporada( por que habia otro que no tenia cassete xd) el army moves de la gran compañia de juegos dinamic Aunque si os digo la verdad el primero primero era una maquinilla de esas de pilas de boton , amarilla para mas señas, que tenia un unico juego en memoria, el juego era de tenis y consistia en dar a las pelotas que caian y evitar que cayeran al suelo,cuantas mas pelotas dabas y mas teimpo pasaba mas velocidad cogia n las pelotas.Aunque os parezca raro era realmente adictivo, y es que es verdad que no hay mejor contricante que batirse uno mismo sus propios records. Y para vosotros, cuales son los primeros juegos y maquinas de vuestras vidas??? Un saludo
668
« en: Domingo 14 de Noviembre de 2004, 15:45 »
Hola A mi me gusta el GoldWave , ocupa poco , es sencillo de usar y bastante potente un saludo
669
« en: Domingo 14 de Noviembre de 2004, 15:36 »
hola El webcopier es de los mejores y no ocupa mas de 2mb comprimido un saludo
670
« en: Domingo 14 de Noviembre de 2004, 15:23 »
Hola 1.2) una clase en C++ es un mecanismo que permite al programador definir sus propios tipos de objetos.¿Y que es un objeto? Pues cualquier cosa que te imagines, desde un circulo, un cubo, una ventana del windows, cualquier objeto virtual claro esta De forma coloquial se podria decir que una clase es un molde con el que se pueden hacer objetos de unas caracteristicas determinadas. 1.3) para no sobreescribir el archivo debes situarte al final de el, es decir llegar hasta el EOF y luego escribir a partir de ahi.Segun la libreria que uses se hace de una forma o otra. 1.4) Lo siento no he hecho nada con Allegro asi que no puedo decirte que es mas facil o dificil Un saludo  , y un consejo, cuida esa ortografia
671
« en: Domingo 14 de Noviembre de 2004, 13:12 »
Hola ¿Como se ponen las etiquetas para que salga el codigo igual que sale en muchos compiladores, con el texto entrecomillado de un color, las funciones de otro , etc? Gracias , un saludo
672
« en: Domingo 14 de Noviembre de 2004, 13:04 »
Hola Para mi que el problema sera seguramente de los bucles, ya que en visual c++ al tratarse de programacion orientada a objetos que interactuan con mensajes, se necesita de un proceso que actualice la aplicacion cada x tiempo Te voy a decir otra forma mucho mejor de hacer el contador que pretendes primero tienes que crear un metodo OnTimer en la aplicacion( que supongo sera un dialogo). Para ello te vas al class wizard (ctrl +w) y en la pestaña de metodos y seleccionando la clase de dialogo , escoges en la lista el metodo ontimer. seguidamente hay que iniciar el timer, para ello supongo un boton que al presionar empieza el timer: void CContarDlg::OnContar() { SetTimer(1,50,NULL); // Esta es la funcion que inicia el timer, tiene 3 parametros // el primero es un entero para identificar el timer, si // tuvieras x timers tendrias que poner 1..... hasta x // identificadores distintos.El segundo parametro es el // tiempo en milisegundos que tarda en actualizarse el // timer, si quieres cada 1 seg pones 1000.El último // argumento es un indicador de la funcion que se // va a ejecutar cada vez que se recibe el mensaje de // temporizacion , si pones NULL se pasa un mensaje a // la aplicacion que ha hecho la llamada a SetTimer }
Por ultimo hay que implementar la funcion OnTimer que es la que dice lo que hay que hacer cada vez que cambia el timer (es decir cada vez que pasan 50 ms en este caso). En tu caso seria importante ver cual el tiempo de refersco del timer optimo para que no te pase por ejemplo de un 15% a un 20% o que vaya tan rapido que relentice la aplicacion, pero eso ya lo veras segun tarde el programa en ordenar los elementos, divides entre 100 y mas o menos obtienes una fecuencia optima para el timer void CContarDlg::OnTimer(UINT nIDEvent) { CDialog::OnTimer(nIDEvent); // codigo que crea el visual c++ CString numero; // creamos una variable cstring static int tiempo=0; // y una variable static int para el contador tiempo=(tiempo+1)%101; // incrementamos el contador, lo del // modulo es por si no quieres que pase // de un cierto numero , en este caso 101 numero.Format("%d",tiempo); // convertimos tiempo que es int // en un CString mediante format m_contador=numero; // pasamos el numero en forma de CString // a la variable de la caja de texto UpdateData(false); // actualizamos la caja de texto if(m_contador=="100")KillTimer(1); //Por ultimo si quieres que el // contador se pare puedes usar // la funcion KillTimer indicando // el identificador 1 en este caso // del timer iniciado en OnContar }
Esto es todo, espero que te sirva de ayuda.Un saludo Aqui te adjunto el ejecutable para que veas como funciona
673
« en: Domingo 14 de Noviembre de 2004, 08:44 »
Hola Pon el texto del error que te da y la linea donde se produce. Como el codigo parece que no lo has hecho tu seguramente sea algun problema de librerias, que no las hayas linkado al proyecto o algo asi. Y por favor cuida de escribir un poco mejor que no cuesta tanto y se entiende mejor un saludo
674
« en: Sábado 13 de Noviembre de 2004, 14:01 »
Hola Si no recuerdo mal UpdateData(false) era para actualizar el cuadro de texto, pero no actualiza la variable Para actualizar la variable que has relacionado con la caja de texto es UpdateData(true). Prueba a ver si va esto n=1; while (n<101) { n=m_barvalue; // envio a la variable del edit box UpdateData(true); UpdateData(false); for (m=1; m<3000000;m++); // efecto de retardo n++; }
un saludo
675
« en: Sábado 13 de Noviembre de 2004, 09:37 »
Hola Maria Lo siento pero creo que no has leido bien el enunciado de la practica Realiza un programa en C para gestionar los datos incluidos en un fichero de tipo texto mediante una lista simplemente enlazada. por eso no te cuadra el apartado 11 11. grabarLista: graba los datos de la lista en un fichero binario. El nombre del fichero debe ser tomado del argumento en la línea de comandos. La función tendrá como parámetros la lista y el nombre del fichero. En mi opinion lo que tienes que hacer es un programa que lea los datos de un archivo de texto "fichero.txt o fichero.dat" que esta en el disco duro de tu ordenador, entonces carga esos datos a una lista para poder operar con ellos, buscar por apellido, borrar registros, etc y finalmente si el usuario quiere ,volver a grabar los datos en un nuevo archivo, y asi los datos no se pierdan al finalizar la aplicacion Sera mejor que preguntes a quien te haya mandado hacer la practica , si es eso lo que te pedian  de todas maneras es una pena por que ya tenias hecho un buen trozo de codigo, aunque las funciones de borrar, buscar,almacenar teseguiran valiendo, con algun retoque Siento darte "malas" noticias pero tranqui que lo de acceso a archivos es mas facil que lo de las listas enlazadas, para mi gusto, si tienes algun problema con el manejo de archivos dimelo, que no se me da del todo mal. Un saludo  y animo que no hay nada imposible  a programar ¡¡
Páginas: 1 ... 25 26 [27] 28 29 30
|
|
|