| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 765 人关注过本帖
标题:[求助]分糖果
取消只看楼主 加入收藏
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
 问题点数:0 回复次数:4 
[求助]分糖果
十个小孩围成一圈分糖果,老师分给第一个小孩10块,第二个小孩2块,第三个小孩8块,第四个小孩22块,第五个小孩16块,第六个小孩4块,第七个小孩10块,第八个小孩6块,第九个小孩14块,第十个小孩20块。然后所有的小孩同时将手中的糖分一半给右边的小孩;糖块数为奇数的人可向老师要一块。问经过这样几次后大家手中的糖的块数一样多?每人各有多少块糖?(要求给出每一轮每人手上的糖果数量)。

给个思路,谢谢。
搜索更多相关主题的帖子: 糖果 小孩 块数 糖块 
2005-11-10 19:45
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
int a[10]={10,2,8,22,16,4,10,6,14,20};
第一轮数据没关系的。估计你程序有问题。

[此贴子已经被作者于2005-11-10 22:07:29编辑过]


2005-11-10 22:06
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
我实施看你的程序。

2005-11-11 19:08
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 

#include <stdio.h>
int i,j=0,l,flag=0;//j=第几轮。
int a[10]={10,2,8,22,16,4,10,6,14,20};
void shuchu()
{
for(i=0;i<10;i++)
printf("%3d",a[i]);
printf("\n");
}
void main()
{
while (flag==0)// flag==0,退出循环。
{
printf("第 %2d 轮分糖:\n",++j);
printf("开始:");
shuchu();

l=a[9]/2;
for(i=9;i>0;i--)
a[i]=a[i]/2+a[i-1]/2;
a[0]=a[0]/2+l;
printf("分糖: ");
shuchu();//开始新一轮分糖。

for(i=0;i<10;i++)
{

if (a[i]%2==1)
a[i]+=1;
}
printf("补糖: ");
shuchu();
printf("\n");//分好补糖。

flag=1;
for(i=1;i<10;i++) // a[0]=任意a[i],继续分糖。
{
if (a[0]!=a[i])
flag=0;
}
}
}

你的没问题。呵呵


2005-11-11 19:14
ghy2001
Rank: 1
等 级:新手上路
威 望:1
帖 子:87
专家分:0
注 册:2005-10-30
收藏
得分:0 
做对了我当然感谢你。呵呵。

2005-11-11 19:23
快速回复:[求助]分糖果
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017575 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved