Título: Comparar fechas. Ayuda! C++ Publicado por: Wazzp en 23 Septiembre 2010, 23:57 pm Código
Estoy creando este programa que calcula el tiempo que paso entre 2 fechas.. necesito que me tiren alguna indirecta para el algoritmo del calculo.. y por favor,diganme si tengo algo mal en el codigo hasta ahora.. Creo que el switch lo tengo mal porque cada vez que pongo 1 por ejemplo,ejecuta el cout y luego vuelve al principio en lugar de terminar el programa.. gracias de antemano Título: Re: No se que haceer! Ayuda! C++ Publicado por: [L]ord [R]NA en 24 Septiembre 2010, 00:49 am No entiendo siquiera que es lo que quieres, si te explicas bien creo que seria mejor, verifica tambien que el codigo que tengas sea compilable... Evita los GoTo, no estamos en Basic. para eso existen las funciones, los bucles y las sentencias condicionales.
Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 24 Septiembre 2010, 00:51 am Sinceramente,estaba leyendo uno de los libros que tengo y fue la unica manera en la que se me ocurrio.. La idea es comprar dos fechas diferentes y calcular la cantidad de dias que pasaron entre fecha1 y fecha2.. El codigo compila sin errores ni warnings asi que supongo que esta bien..
Título: Re: No se que haceer! Ayuda! C++ Publicado por: [L]ord [R]NA en 24 Septiembre 2010, 01:31 am 1) el codigo tiene un error cuando se introducen las fechas... verificalo.
2) El Switch tiene un error, siempre sale default porque solicitas un int y luego lo comparas con un char sin realizar la conversion... Mira la Tabla ASCII. Compara primero los años, buscales la diferencia, despues los meses y despues los dias, entonces toma en consideracion la longitud del año con respecto a los meses y si el año es o no es bisiesto. Un consejo: Si el libro que estas leyendo te recomienda GoTo inmediatamente deja de leerlo... te aseguro que quien escribio el libro a suerte debe de saber basic. Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 24 Septiembre 2010, 20:10 pm No es que lo recomienda.. en un momento aparece un ejemplo con el goto.. Pero no dice nada al respecto.. es como una mencion de que existe.. ahora me fijo y lo corrijo.. Gracias por la ayuda RNA :D
EDIT: Revisando el Codigo,hice algunas modificaciones y el codigo compila y funciona bien.. Ahora mi problema es como reemplazar los goto.. Deberia usar void x () siendo x una funcion hecha por mi?? Si es asi aun no estoy seguro de como hacerlo, y si no es asi no tengo ni idea.. ayuda? Título: Re: No se que haceer! Ayuda! C++ Publicado por: Littlehorse en 24 Septiembre 2010, 20:39 pm Citar EDIT: Revisando el Codigo,hice algunas modificaciones y el codigo compila y funciona bien.. Ahora mi problema es como reemplazar los goto.. Deberia usar void x () siendo x una funcion hecha por mi?? Si es asi aun no estoy seguro de como hacerlo, y si no es asi no tengo ni idea.. ayuda? Si, usar funciones seria lo ideal. Tal vez te sirva revisar este capitulo de conclase (http://c.conclase.net/curso/?cap=003). Saludos Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 24 Septiembre 2010, 21:51 pm Código
No se si voy bien pero por ahora tengo esto.. Alguien me podria decir si de lo de las funciones esta bien? si lo estan hago rapido el algoritmo para el calculo,relleno las funciones que me faltan y lo compilo a ver si funciona.. Título: Re: No se que haceer! Ayuda! C++ Publicado por: satu en 25 Septiembre 2010, 12:25 pm Hola, la idea es esa pero no lo haces bien. Donde tienes definidas las funciones escribes su código y luego dentro del main solo tienes que llamar a la función:
Código
Título: Re: No se que haceer! Ayuda! C++ Publicado por: PiroskY en 25 Septiembre 2010, 15:13 pm Che, pero por que primero no intentas hacer el codigo que compare dos fechas?
btw: Tenes que validar que las 2 fechas esten bien o se supone que van a ingresar fechas correctas? Título: Re: No se que haceer! Ayuda! C++ Publicado por: satu en 25 Septiembre 2010, 16:38 pm Hola
Eso lo tiene que hacer él, es su tarea. Y claro que puede comprobar que las fechas estén bien, pero eso ya depende de él. De esta forma tienes que confiar en que la fecha introducida sea válida, pero así está bien, eso ya depende de cómo quiera hacerlo, mientras más comprobaciones "mejor" (nótense las comillas) pero si no se lo piden.... Saludos Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 25 Septiembre 2010, 16:59 pm Eso de la comprobacion de la voy a agregar mas adelante.. primero quiero lo basico y se lo mando a mi amiga que me lo pidio.. y ahi le pregunto si quiere esa comprobacion,si me dice que no,el programa esta bien,si las kiere,solamente tengo que agregarlas y listo! Gracias por la ayuda :)
Título: Re: No se que haceer! Ayuda! C++ Publicado por: PiroskY en 25 Septiembre 2010, 17:07 pm jaja a wazzap le decia que lo haga
Porque hizo toda una estructura todo ordenadito, pero primero que nada yo haria el programa funcional, y despues le doy mejor formato Intenta hacer el codigo que compare las 2 fechas y decinos que tal te fue Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 25 Septiembre 2010, 18:30 pm Ok.. les voy a ser 100% Sincero.. No tengo NI IDEA de que hice XD Solo se que compila y funciona bien.. pero no creo que el algoritmo para las fechas este bien.. Alguien corrige? porque ya lo revise como 20 veces y no se cual podria ser un error..
Código
Ahh y disculpa satu pero use tu idea.. Una pregunta,es necesario ubicar los & dentro del void()?? Título: Re: No se que haceer! Ayuda! C++ Publicado por: PiroskY en 25 Septiembre 2010, 18:59 pm Pero los meses no tienen todo 30 dias
Vos lo que queres hacer es algo simplesito que calcule aproximadamente, o tiene que ser exacto? Porque tampoco estas teniendo en consideracion años bisiestos Mira, yo empece hace poquito a programar, y lo que haria es lo siguiente: dividi el calculo en 3 etapas Primero calcular cuantos dias faltan hasta el fin de año de la primer fecha despues culcular cuantos años hay entre las 2 fechas y por ultimo cuantos dias pasaron del ultimo año Esto te funcionaria solo para fechas en las que los años no son el mismo pero el otro caso lo haces a parte y listo No se si estoy ayudando demasiado, que alguien me diga si es el caso, soy nuevo en el foro Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 25 Septiembre 2010, 19:16 pm Aclaro por las dudas: El programa es para una amiga,en ningun caso debe ser 100% Exacto. Ya le pregunte el tema de la exactitud del programa y me dijo que no hacia falta.. Si en algun momento me pide que lo haga mas exacto usaria un par de Ifs mas para los meses que tengan 30/31/28/29 dias y los años bisiestos
Igual,Ayudes demasiado o no,quiero darte las gracias :) Todo esto me ayuda mas que a realizar el ejercicio(Que sinceramente no tiene tanta importancia) Me ayuda a pensar como programador,y creo que eso no se puede aprender de ningun lado, Solo tu interes y tus ganas de ser un programador pueden servir :) -Solo mi opinion- Saludos del Wazzp :rolleyes: Título: Re: No se que haceer! Ayuda! C++ Publicado por: PiroskY en 25 Septiembre 2010, 19:27 pm bueno, si no tiene que ser exacto esta bien
Te diria que intentes volver a hacerlo siguiendo los tips de las 3 etapas Y si no va a ser tan exacto, tampoco te gastes en fijarte cual es la fecha anterior a la otra Que en la primer variable se ingrese la fecha mas antigua y en la segunda la mas actual Título: Re: No se que haceer! Ayuda! C++ Publicado por: Wazzp en 25 Septiembre 2010, 19:33 pm Hmmm... Wow.. Se me acaba de ocurrir una muy buena idea o.o!!! Tu comment fue disparador! Graciaas!! Cuando termine el code lo posteo por si a alguien le interesa usarlo :) (Voy a ponerle lo de los años bisiestos y los meses antes de postearlo asi es 99.99% Exacto)
EDIT: Código Por que se cuelga en lugar de empezar cuando pongo introduzco Comparar en switch? |