Título: algoritmo de la edad Publicado por: Maggie283 en 27 Octubre 2005, 01:36 am por fis help!!!!1
necesito un algoritmo para realizar el calculo de edades, ingresando la fecha de nacimiento.... gracias Título: Re: algoritmo de la edad Publicado por: Crack_X en 27 Octubre 2005, 02:05 am Vamos usa la cabeza... si yo te doy mi fecha de nacimiento como calculas mi edad? Es matematica SIMPLE , solo pensar un poco.
Vamos que tu puedes ;) Título: Re: algoritmo de la edad Publicado por: TheMule en 27 Octubre 2005, 02:46 am por fis help!!!!1 necesito un algoritmo para realizar el calculo de edades, ingresando la fecha de nacimiento.... gracias que??????????????????? MINIMO si kisieras los nanosegundos que he vivido pero EN SERIO no puedes saber que edad tengo si te digo mi fecha de nacimiento? Título: Re: algoritmo de la edad Publicado por: Kpax en 27 Octubre 2005, 02:58 am Por Dios !!!
sabes restar??? bueno en fin si le añadimos mas complejidad al asunto quiza ´puedes considerar el caso de un pata q nace el 29 de febrero y ni aun asi no es nada dificil. suerte Título: Re: algoritmo de la edad Publicado por: Siuto en 27 Octubre 2005, 03:11 am Código: #include<stdio.h> Título: Re: algoritmo de la edad Publicado por: Unravel en 27 Octubre 2005, 03:41 am Que simples son las cosas asi :)
No se puede restar años solo. Si yo naci en diciembre del 73 tengo 31 años pero si naci en marzo tengo 32. Y lo mismo con los dias. No digo que el programa sea de dificultad extrema, pero no es tan facil como lo poneis aqui. Dependiendo o no de si ya hay una funcion que te lo de, que lo desconozco. Si no la hubiera como lo haríais? Porque hay que ver el dia, el mes, el año, si es bisiesto o no, etc. Hay por ahi un algoritmo que consiste en multiplicar el año por 10000 el mes por 100 y sumarlos la dia, y si el mes es menor le restas 1 y no se que historias Título: Re: algoritmo de la edad Publicado por: Siuto en 27 Octubre 2005, 04:06 am Código: #include<stdio.h> No entiendo porq decis lo de los años biciestos Unreval. Yo cuando le digo mi edad a alguien no pienso en cuantos años biciestos vivi... Título: Re: algoritmo de la edad Publicado por: Unravel en 27 Octubre 2005, 04:19 am Segun tu programa, en 1901 yo tenia un año no? Soy Conan McClaud.
Hombre, piensalo, como no te van a afectar los bisiestos? Título: Re: algoritmo de la edad Publicado por: Siuto en 27 Octubre 2005, 04:22 am Segun tu programa, en 1901 yo tenia un año no? Soy Conan McClaud. Hombre, piensalo, como no te van a afectar los bisiestos? Pero ese 1900 hay que cambiarlo por eso puse este comentario al costado: /* año en el que naciste */. Tb hay que cambiar el dia y mes. Quien es Conan McClaud? Ya lo pense ante del post anterior, y no me doy cuenta sino no te lo preguntaria... Título: Re: algoritmo de la edad Publicado por: Unravel en 27 Octubre 2005, 04:26 am Es vedad no me fije en los comentarios.
Es el de los inmortales :) De todas formas, si yo nazco el 1 de julio del 73 y me pliaco el progrma ahora, me dice que tengo 32 años. Pero si nazco el 1 de Diciembre del 73, el programa tb me dice que tengo 32 años. Por eso hay que calcular el mes, y ya dentro de los meses el dia. Para programar eso tienes que pasarlo todo a dias, y ahi entran en cuenta los bisisestos Título: Re: algoritmo de la edad Publicado por: Siuto en 27 Octubre 2005, 04:39 am Vos me estas cargando, como que no anda en esa fecha??
Ahi esta compilado como que naciste 1/12/1973 y dice q tens 31 Código: #include<stdio.h> Código: En 1973 mi edad era 0 años. Título: Re: algoritmo de la edad Publicado por: heap en 27 Octubre 2005, 05:32 am No es mas facil hacer una resta ???????????/
haber si hoy es el octubre de 2005 y yo naci en 1986 tengo ? 2005 - 1986 = 19 //suponiendo que cumpla antes de octubre luego un simple if statement if (current_month > month_birtday){ edad--; } else if(month_birthday == current_month){ if( day_birthday > current_day){ edad--; } bueno eso seria para calcular la edad, pero necesitas conocer el dia en el que estas. #include<time.h> fecha = time (NULL); tiempo_local = localtime (&fecha); //lo pasas a tiempo local para sacar datos es por ejemplo, el mes mas grande es diciembre, eso en espa~ol, en ingles es january, define un array de 20 chars para el month y haz algo como strftime (month, SIZE, %A, loctime); etx etx etx, puedes hacer calculos infinitos de if statements, dependiendo de la precision que quieras, por ejemplo si son las 7 de la noche y yo naci a las 8 tienes que hacer un if, y asi sucecivamente, hasta que tan preciso quieres ser. Título: Re: algoritmo de la edad Publicado por: Siuto en 27 Octubre 2005, 16:21 pm etx etx etx, puedes hacer calculos infinitos de if statements, dependiendo de la precision que quieras, por ejemplo si son las 7 de la noche y yo naci a las 8 tienes que hacer un if, y asi sucecivamente, hasta que tan preciso quieres ser. Fue por esto que yo en un principio lo hice solo con los años y no le agregue meses y dias.Pero exageraste un poquito con eso de infinitos, porq dudo que en mi partida de nascimiento diga en que milesima de segundo naci... Título: Re: algoritmo de la edad Publicado por: Ragnarok en 27 Octubre 2005, 21:59 pm Casi, sería así:
Citar if (current_month < month_birtday){ edad--; } else if(month_birthday == current_month){ if(day_birthday > current_day){ edad--; } Pasar a días es muy cansino porque cada mes tiene una cantidad distinta de días y los febreros además dependen del año. Por último hay funciones que te dan la fecha y hora actual: http://c.conclase.net/librerias/libreria.php?lib=time Título: Re: algoritmo de la edad Publicado por: Kpax en 27 Octubre 2005, 22:40 pm si consideras los bisisestos es mejor calcular el numero de dias q trancurrieron !
saludos Título: Re: algoritmo de la edad Publicado por: Ragnarok en 27 Octubre 2005, 22:59 pm si consideras los bisisestos es mejor calcular el numero de dias q trancurrieron ! saludos uhm..., no. Si no calculas el numero de dias no hace falta que tengas en cuenta los bisiestos, sale igual. Título: Re: algoritmo de la edad Publicado por: Kpax en 28 Octubre 2005, 16:45 pm seguro??
Creo que si hace falta al calcular el numero de dias...es decir tu edad exacta con dias y todo...pro si es solo años no recuerdo bien si falla con dias limites como 31 de dic o29 fde febrero. Título: Re: algoritmo de la edad Publicado por: Siuto en 28 Octubre 2005, 20:58 pm seguro?? Lo que decis es verdad pero si tenes en cuenta tu cumpleaños desde ese punto de vista, atravez de tu vida iria cambiando la fecha de cumpleaños.Creo que si hace falta al calcular el numero de dias...es decir tu edad exacta con dias y todo...pro si es solo años no recuerdo bien si falla con dias limites como 31 de dic o29 fde febrero. Si yo naci el 6de Septiembre y cuento mi cumpleaños por dias y no por años, el una X cant de años empesaria a cumplir el 7 y nadie lo piensa asi... Título: Re: algoritmo de la edad Publicado por: heap en 29 Octubre 2005, 01:08 am Hmm creo que me malinterpretaron: al comparar el # de dias, no importa si el mes tiene 10 o 20 o 1000, yo no calculo los a~os vividos, sino mas bien si ya cumplio otro a~o o no. Por ejemplo si nacio el 10 de febero de X y hoy es 9 de febrero y resto 2005 - X voy a tener 1 a~o de mas, por ello miro si el mes es igual y luego comparo el dia de nacido con el dia de hoy, si el dia de nacido es menor, no hago nada, si es mayor resto 1. Eso despues de asegurarme que el mes es > o = al de nacido. sino simplemente resto 1. Luego uno tambien podria mirar si el dia son iguales, y comparar las horas...........etx, etx
Título: Re: algoritmo de la edad Publicado por: alking303 en 4 Noviembre 2005, 18:36 pm oe hombre no sas abusivo pes como no vas a saber eso pe s
ayay que pena ah pero aca te va una ayuda pes #include<iostream.h> #include<conio.h> #include<math.h> void main() {int aa,an,ed;/aa=año actual an=año de nacimiento ed=edad cout<<"Año de nacimiento: "; cin>>an; cout<<"Año de actual: "; cin>>an; ed=aa-an; cout<<"Edad de nacimiento: "<<ed; getch(); } ya lo tienes ok bey saludos ;) Título: Re: algoritmo de la edad Publicado por: JEEM1296 en 1 Diciembre 2015, 07:04 am se que es un tema viejo, pero busco lo mismo, y la verdad no es tan simple como lo cuentan, no se olviden del analisis de los años bisiestos ademas de los dias por mes, serian varias validaciones
Título: Re: algoritmo de la edad Publicado por: daryo en 1 Diciembre 2015, 14:43 pm sacado de la wikipedia:
Citar Un año es bisiesto si es divisible entre 4, a menos que sea divisible entre 100. Sin embargo, si un año es divisible entre 100 y además es divisible entre 400, también resulta bisiesto. Obviamente, esto elimina los años finiseculares (últimos de cada siglo, que ha de terminar en 00) cuyo siglo no es múltiplo de 4 Citar Este día se añade para corregir el desfase que existe entre la duración del año trópico: 365 días 5 h 48 min 45,25 s (365,242190402 días) y el año calendario de 365 días. Esto requiere que cada cuatro años se corrija el año calendario en todo caso prueba despreciarlo que no vivimos lo suficiente para que añada otro año a nuestra vida cada 1460 años se le agrega uno adicional 365x4 http://foro.elhacker.net/programacion_cc/edad_a_travez_de_fecha_de_nacimiento-t445033.0.html |