一头奶牛从出生后的第四年开始生育小牛,以后每年生育一头.   
  给你一头刚出生的小奶牛,20年后共有多少头奶牛!!
在网上看到这个问题,希望大家帮忙解决一下

解决方案 »

  1.   

    这个很简单
    开始有1头
    n年后有0.5*(n-1)*(n-1)-0.5
    你核对下
    用微积分
      

  2.   

                int m = 0;
                int x=n/4;  /n为规定的年数,此题n为20
                for(int i=1;i<=x;i++)
                {
                    for (int j = 1; j <= i;j++ )
                    {
                        m++;
                       
                    
                    }
                    Console.Write('\n');
                 }
                 Console.Write(m);  /m为所产奶牛的数量!!
                 Console.ReadLine();
      

  3.   

    我的数学学得不好, 但擅长模拟:using System;
    using System.Collections.Generic;
    using System.Text;namespace Cow
    {
        class Program
        {
            static void Main(string[] args)
            {
                List<Cow> list = new List<Cow>();
                list.Add(new Cow()); //第一年只有一只牛
                Farm farm = new Farm(list);
                farm.BreedXYear(20); //20年的养殖
                int count = farm.CowCount;
                Console.WriteLine(count.ToString());
                Console.ReadLine();
            }
        }    public class Cow
        {
            /// <summary>
            /// 年龄
            /// </summary>
            protected int m_age;        public Cow()
            { 
                m_age=0;
            }        /// <summary>
            /// 生长
            /// </summary>
            public void Growth(out Cow smallcow)
            { 
                m_age++;
                smallcow = BirthCow();
            }        public int Age
            {
                get
                {
                    return m_age;
                }
            }        /// <summary>
            /// 生小牛
            /// </summary>
            /// <returns></returns>
            protected Cow BirthCow()
            {
                if (m_age > 3)
                {
                    Cow cow = new Cow();
                    return cow;
                }
                else
                {
                    return null;
                }
            }    }    //农场
        public class Farm
        {
            private List<Cow> m_cowList;        public Farm(List<Cow> cowList)
            {
                this.m_cowList = cowList;
            }        /// <summary>
            /// 一年农场的养殖
            /// </summary>
            public void BreedOneYear()
            {
                List<Cow> smallCowList=new List<Cow>();
                foreach (Cow item in m_cowList)
                {
                    Cow smallcow;
                    item.Growth(out smallcow);
                    if (smallcow != null)
                    {
                        smallCowList.Add(smallcow); //小牛加入小牛队伍
                    }
                }
                m_cowList.AddRange(smallCowList); //将小牛队伍加入大家庭队伍 
            }        public void BreedXYear(int Xyears)
            {
                for (int i = 0; i < Xyears; i++)
                {
                    BreedOneYear();
                }
            }        /// <summary>
            /// 返回牛的总数目
            /// </summary>
            /// <returns></returns>
            public int CowCount
            {
                get
                {
                    return m_cowList.Count;
                }
            }    }
         }结果如下: 345
      

  4.   


    斐波那契数列又因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”。
      斐波那契数列
      一般而言,兔子在出生两个月后,就有繁殖能力,一对兔子每个月能生出一对小兔子来。如果所有兔都不死,那么一年以后可以繁殖多少对兔子? 
      我们不妨拿新出生的一对小兔子分析一下: 
      第一个月小兔子没有繁殖能力,所以还是一对; 
      两个月后,生下一对小兔民数共有两对; 
      三个月以后,老兔子又生下一对,因为小兔子还没有繁殖能力,所以一共是三对; 
      ------ 
      依次类推可以列出下表: 
      经过月数:---0---1---2---3---4---5---6---7---8---9--10--11--12 
      兔子对数:---1---1---2---3---5---8--13--21--34--55--89-144-233 
      表中数字1,1,2,3,5,8---构成了一个数列。这个数列有关十分明显的特点,那是:前面相邻两项之和,构成了后一项。 
      这个特点的证明:每月的大兔子数为上月的兔子数,每月的小兔子数为上月的大兔子数,即上上月的兔子数,相加。
      这个数列是意大利中世纪数学家斐波那契在<算盘全书>中提出的,这个级数的通项公式,除了具有a(n+2)=an+a(n+1)/的性质外,还可以证明通项公式为:an=1/√[(1+√5/2) n-(1-√5/2) n](n=1,2,3.....)
    上面这个题目跟这个差不多。