| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 541 人关注过本帖
标题:请教此题的C程序源!
只看楼主 加入收藏
风之翼ASD
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2011-1-9
结帖率:100%
收藏
已结贴  问题点数:2 回复次数:9 
请教此题的C程序源!
一排人,第一个为1号,第二个为2号,依次类推,号码总和在800到1000之间,孩子数是成人数的三分一,成人的号数总和是孩子的号码总和的三倍,求成人与孩子各有多少,以及所有号码总和?急求此题的C程序源!

[ 本帖最后由 风之翼ASD 于 2011-1-9 11:00 编辑 ]
搜索更多相关主题的帖子: 成人 
2011-01-09 00:50
hust_sj
Rank: 3Rank: 3
来 自:湖北
等 级:论坛游侠
帖 子:94
专家分:116
注 册:2009-8-26
收藏
得分:0 
这么简单的问题要计算机算么?手算就可以得出来:
成人30人,孩子10人
号码总和:820


每当我回完帖时,我都会默默的点一根烟,然后离开
2011-01-09 01:33
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
题都没读太懂。什么叫“孩子数位是成人数的三分一“?
2011-01-09 02:05
hust_sj
Rank: 3Rank: 3
来 自:湖北
等 级:论坛游侠
帖 子:94
专家分:116
注 册:2009-8-26
收藏
得分:0 
回复 3楼 pangding
应该是打错了,孩子数目是大人数目的三分之一

每当我回完帖时,我都会默默的点一根烟,然后离开
2011-01-09 02:08
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:0 
条件这么多,确实用手算就足以了。
从 1 加到 n 要想和在 800 到 1000 之间,n 只能介于 40 和 44 之间。(39是780,45是1035)。
成人数是儿童的三倍,就是说总人数肯定是 4 的倍数。那就只能是 40 或 44。
成人和还是儿童和的三部,那么总和也得是 4 的倍数。40 的总和是820,可以;44是990,不行。

所以总人数是40,大人30,小孩10。
2011-01-09 02:25
hust_sj
Rank: 3Rank: 3
来 自:湖北
等 级:论坛游侠
帖 子:94
专家分:116
注 册:2009-8-26
收藏
得分:2 
还是附上代码吧
程序代码:
#include <stdio.h>
int main()
{
    int num, n;    //号码总和,总人数,大人,小孩
    for(num=800; num<=1000; ++num){
        if(num%4)    //显然号码总数要是四的倍数
            continue;
        for(n=1;n*(n+1)/2 <= num;++n){
            if((n%4) || (n*(n+1)%2) )    //根据题目得到的判断条件
                continue;
            if(n*(n+1)/2==num){
                printf("成人:%d人,小孩:%d人\n",n/4*3,n/4);
                printf("号码总数:%d\n",num);
                break;
            }
        }
    }
    return 0;
}
结果:

图片附件: 游客没有浏览图片的权限,请 登录注册



[ 本帖最后由 hust_sj 于 2011-1-9 02:38 编辑 ]
收到的鲜花
  • 风之翼ASD2011-01-09 13:35 送鲜花  3朵   附言:原创内容

每当我回完帖时,我都会默默的点一根烟,然后离开
2011-01-09 02:36
huangapple
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:545
专家分:1790
注 册:2010-12-30
收藏
得分:0 
迟了。。

勤能补拙,熟能生巧!
2011-01-10 09:23
点线面
Rank: 8Rank: 8
来 自:NO.-1
等 级:蝙蝠侠
帖 子:525
专家分:980
注 册:2011-1-3
收藏
得分:0 
这条题思想是
怎样把号码数与人数联系,
一排人,第一个为1号,第二个为2号,依次类推,号码总和在800到1000之间
这里可以用等差求和公式,可以将号码数与人数进行联系,接着再判断
孩子数是成人数的三分一,最后判断成人的号数总和是孩子的号码总和的三倍,
关键要判断是否整除

小代码,大智慧
2011-01-10 09:56
ququguoguo
Rank: 2
等 级:论坛游民
帖 子:73
专家分:90
注 册:2010-10-20
收藏
得分:0 
表示来学习了
2011-01-10 11:42
a343637412
Rank: 7Rank: 7Rank: 7
来 自:そ ら
等 级:黑侠
帖 子:357
专家分:620
注 册:2010-9-26
收藏
得分:0 



 


            只能看看热闹,  不介意大大马后炮吧,  建议以数学的思维解决问题....再用代码实现....
2011-01-10 12:24
快速回复:请教此题的C程序源!
数据加载中...
 
   



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

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