论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > C语言程序设计教程
Tag:新手,函数,指针,数据类型,对象,Turbo,入门,运算符,数组,结构,二级,,tc,游戏,试题,问答,编译,视频教程

卖桃子

文章类别:C语言程序设计 | 发表日期:2008-9-24 14:43:41

                  

                                         卖桃子

 问题:

     一筐桃子,第一天买掉一半又吃掉一个;第二天买掉余下的一半又吃掉一个;

     第三天,第四天,第五天以后都照此办理,最后剩下1个,问筐中共有多少个桃子.

 解答:

    用递归的方法求解,源程序如下:

  #include <iostream.h>
  void main()
  {
     int i,remaining=1,day;
   cout<<"请输入卖桃子的天数:"<<endl;
    cin>>day;
    cout<<endl;
    for(i=1;i<=day;i++)
   {
    remaining=2*remaining+2;
   }
    cout<<"原有桃子的总数为:"<<endl;
    cout<<remaining<<endl;
  }

 另外一个相似的问题:

                       递推捕鱼的问题

问题:
A,B,C,D,E合伙夜间捕鱼,凌晨是都疲惫不堪,各自啊在河边的树丛中找地方睡着了。
日上三竿,A第一个醒来,他将鱼平分为5分,把多余的一条扔回湖中,拿自己的一份回家
去了;B第二个醒来,也将鱼平分为5分,扔掉多余的一条,只拿走自己的一分;接着C,D,
E依次醒来,也都按同样的办法分鱼。问5人至少合伙捕到多少条鱼?每个人醒来后所看到的
鱼数是多少条?

//编制时间:2004年11月22日
//主要功能:递归算法的事例
//编制人:周峰
  其中的一组解也是最小解为:
  621
  496
  396
  316
  252
 
  程序的解不是唯一的,设定不同的fish[0]值就可能得到不同的解,比如说fish[0]=721时
  就可得到另一组解
  1246
  996
  796
  636
  252
程序的原代码:
 #include <iostream.h>
void main()
{
 int fish[5]={721,1,1,1,1};
 int i;
    do
 {
       
  for(i=0;i<=3;i++)
  {  if((fish[i]-1)%5==0)
     fish[i+1]=(fish[i]-1)*4/5;
   
     else
   break;
   
         }
   fish[0]+=5;
 }
       while(i<=3);
 fish[0]-=5;

 for(i=0;i<=4;i++)
 {
  cout<<fish[i]<<endl;
 }
}  

上一篇:{实例}跳水排名 人气:4541
下一篇:{实例}简单的画笔 人气:7100
视频教程列表
文章教程搜索
 
C语言程序设计推荐教程
C语言程序设计热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058