Given an age in seconds, calculate how old someone would be on:
So if you were told someone were 1,000,000,000 seconds old, you should be able to say that they're 31.69 Earth-years old.
If you're wondering why Pluto didn't make the cut, go watch this YouTube video.
Note: The actual length of one complete orbit of the Earth around the sun is closer to 365.256 days (1 sidereal year). The Gregorian calendar has, on average, 365.2425 days. While not entirely accurate, 365.25 is the value used in this exercise. See Year on Wikipedia for more ways to measure a year.
Some Rust topics you may want to read about while solving this problem:
Traits, both the From trait and implementing your own traits
Default method implementations for traits
Macros, the use of a macro could reduce boilerplate and increase readability
for this exercise. For instance,
a macro can implement a trait for multiple types at once,
though it is fine to implement years_during
in the Planet trait itself. A macro could
define both the structs and their implementations. Info to get started with macros can
be found at:
Sign up to Exercism to learn and master Rust with 96 exercises, and real human mentoring, all for free.