若母牛从其出生第四年(3周年后)开始每年都会生一头小母牛,按这个规律,1头年龄为year的母牛在futureYear个年头后会生几头母牛?
C# Code:
class Cow { static void Main(string[] args) { for (int i = 0; i <= 10; i++) { Console.WriteLine(new Cow(0, i).SonNumber.ToString()); } Console.ReadKey(); } public Cow(int year, int futureYear) { this.year = year; this.futureYear = futureYear; CountSonNumber(); } private int year; private int futureYear; public int SonNumber { get; private set; } private void CountSonNumber() { var leftYears = futureYear; var currentYear = year; SonNumber = 1; while (currentYear < 3) { if (leftYears > 0) { currentYear++; leftYears--; } else { return; } } for (int i = 0; i <= leftYears; i++) { Cow newCow = new Cow(0,leftYears-i); SonNumber += newCow.SonNumber; } } }
Output:
1
1
1
2
3
4
6
9
13
19
28