分配数量.一级获得总数的80%,二级获得剩下总数的80%,依次类推...
如:总数100分配从一到多级分配为:
80 16 3.2 ....

解决方案 »

  1.   

    private float GetNum(float totalNum, int classNum)
            {
                float currentNum = 0;
                for (int i = 1; i < classNum; ++i)
                {
                    currentNum = totalNum * 0.8;
                    totalNum = totalNum - currentNum;
                }            return currentNum;
            }
      

  2.   

     public Form1()
            {
                double cn = GetNum(100, 2);
                MessageBox.Show(cn.ToString());
                InitializeComponent();
            }        private double GetNum(double totalNum, double classNum)
            {
                double currentNum = 0;
                for (int i = 0; i < classNum; ++i)
                {
                    currentNum = totalNum * 0.8;
                    totalNum = totalNum - currentNum;
                }            return currentNum;
            }小改了一下,经过验证啦!楼主放心使用
      

  3.   

    private double GetNum(double totalNum, double classNum)
            {
                return totalNum * Math.Pow(1 - 0.8, classNum - 1) * 0.8;
            }
      

  4.   

    g(1)=100(n=1)
    g(n)=g(n-1)*20%(n>=2)
    f(n)=g(n)*80%
      

  5.   

    g(1)=100(n=1)
    g(n)=g(n-1)*20%(n>=2)
    f(n)=g(n)*80%