Console-算法[for,if]-一堆桃子和一只猴子

简介:
ylbtech-Arithmetic:Console-算法[for,if]-一堆桃子和一只猴子
 
1.A,案例
-- ========================================================
-- ylb:算法
-- Type:算法[for]
-- munu:一堆桃子和一只猴子
-- thankyou:sunshine
-- 7:11 2012/3/17
-- ========================================================
 
    果园里有一堆桃子和一只猴子,这只猴子第一天把桃子吃了一半,又扔了一个坏掉的桃子;第二天又吃了现有的一半,又扔了一个坏桃子;第三天、第四天、第五天、第六天都是这样。到第七天只剩下一个桃子了。请问果园里最初有多少个桃子?(请从穷举法和迭代法中选取适合的算法完成)
 
1.B,解决方案
复制代码
using System;

namespace ConsoleApplication1
{
    class Program
    {
        /// <summary>
        /// ylb:一堆桃子-一只猴子
        /// 
        /// 分析:
        /// 变量:curSum今天剩余桃子数量
        /// 我们采用“反推法”
        /// 第一天 1=1
        /// 第二天 4=2*(1+1)
        /// 第三天 10=2*(4+1)
        /// 第四天 22=2*(10+1)
        /// 第五天 46=2*(22+1)
        /// 第六天 94=2*(46+1)
        /// 第七天 190=2*(94+1)
        /// 12:56 2012/3/17
        /// </summary>
        /// <param name="args"></param>
        static void Main(string[] args)
        {
            int i, sum=1;
            for (i = 1; i <= 7; i++)
            {
                if (i == 1)
                {
                    sum = i;
                }
                else
                {
                    sum = 2*(sum + 1);
                }
            }
            Console.WriteLine("果园里最初有{0}个桃子!",sum);
        }
    }
}
复制代码
1.C,运行结果
果园里最初有190个桃子!
请按任意键继续. . .

,如需转载请自行联系原作者
相关文章
12【C语言 & 趣味算法】存钱问题(四层for循环,if判断)
12【C语言 & 趣味算法】存钱问题(四层for循环,if判断)
12【C语言 & 趣味算法】存钱问题(四层for循环,if判断)