in reply to Calculating a persons age based on their birthday.
If all you want is the "year value" of a person's age, you
could divide by 365, after you added one to the number
of days for each of the leap years since the person's birth.
You could calculate this offset by subtracting their
birth year from the current year and dividing the result by
four. This works becuase they can't have been born both
before and after Feb 29th. Something like:
but I wanted to clarify what I was doing. It's
quick and dirty, but probably works...
Simplicus
could divide by 365, after you added one to the number
of days for each of the leap years since the person's birth.
You could calculate this offset by subtracting their
birth year from the current year and dividing the result by
four. This works becuase they can't have been born both
before and after Feb 29th. Something like:
I used a few more variable declarations than I would normallyuse integer; #...code ommited; obtain $days from FROM_DAYS() # and $birth_year from database my $this_year; my @time; my $raw_years; my $num_leaps; my $int_years; my $float_years; @time = localtime(time); $this_year = $time[5] + 1900; $raw_years = $this_year - $birth_year; $num_leaps = $raw_years / 4; $days += $num_leaps; $int_years = $days / 365; no integer; $float_years = $days / 365; if ($int_years == $float_years) { print "Today's your birthday!"; } #...Then do whatever else you're going to do
but I wanted to clarify what I was doing. It's
quick and dirty, but probably works...
|
---|
Replies are listed 'Best First'. | |
---|---|
RE: RE: Calculating a persons age based on their birthday.
by Adam (Vicar) on May 03, 2000 at 20:52 UTC | |
by Adam (Vicar) on May 04, 2000 at 02:59 UTC |
In Section
Seekers of Perl Wisdom