免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
打印 上一主题 下一主题

[C] 你认为哪个程序体现程序员的水平? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2013-03-20 21:48 |只看该作者
本帖最后由 晓得飞天千秋雪 于 2013-03-20 21:54 编辑

如果此题要求程序员要有数学家的水平,则网上所有关于此题的程序都是罗嗦的,数学上可以依据指定的月份直接给出兔子数,如下:
#include <stdio.h>
#include <math.h>
long HowManyRabs(int n) //求第n个月的兔子数
{
      double t = sqrt(5);
      double v = (pow((1+t)/2.0, n) - pow((1-t)/2.0, n))/t;
      return (long)(v + 0.5);
}
int main(void)
{
      int n = 24; //求第24个月的兔子数
      printf("第%d月:%ld对兔子\n", n, HowManyRabs(n));
      return 0;
}

论坛徽章:
1
技术图书徽章
日期:2013-09-10 08:57:55
22 [报告]
发表于 2013-03-21 12:04 |只看该作者
回复 20# 在路上ontheway


    这个就比较通用了.

论坛徽章:
0
23 [报告]
发表于 2013-03-24 15:13 |只看该作者
个人觉得第一种方法数理性更强,程序员根据自己的数学功底推出结果。
第二种方法是简单的通过题目要求进行编程,不认同楼上说的定义MAXNUM就觉得这个程序不好,可以动态分配的嘛。。
个人意见,不喜勿喷,可以再讨论。

论坛徽章:
2
程序设计版块每日发帖之星
日期:2015-06-17 22:20:00每日论坛发贴之星
日期:2015-06-17 22:20:00
24 [报告]
发表于 2013-03-24 18:47 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
25 [报告]
发表于 2013-03-25 09:45 |只看该作者
第二个程序比较傻

论坛徽章:
0
26 [报告]
发表于 2013-03-25 14:46 |只看该作者
看来还要好好学习,自己水平差太多了

论坛徽章:
0
27 [报告]
发表于 2013-03-27 14:41 |只看该作者
我只想说 第六个月就有八对兔子了吗?

论坛徽章:
0
28 [报告]
发表于 2013-03-28 20:54 |只看该作者
回复 27# mickey_51


是呀,有问题吗?   

论坛徽章:
0
29 [报告]
发表于 2013-03-29 09:06 |只看该作者
回复 28# 晓得飞天千秋雪
我的理解是:
第一月 1对
第二月 1对
第三月 2对(开始生1对)
第四月 3对(生1对)
第五月 4对(生1对)
第六月 6对(生1对+第三个月的兔子出生的兔子开始生1对了)

不知道是否理解错误了? 请多多指点!
   

论坛徽章:
0
30 [报告]
发表于 2013-03-29 17:03 |只看该作者
回复 29# mickey_51


第一月 A兔子,1对
第二月 A兔子,1对
第三月 A兔子,A_1(新生)兔子,2对
第四月 A兔子,A_2(新生)兔子,A_1兔子,3对
第五月 A兔子,A_3(新生)兔子,A_2兔子,A_1兔子,A_1_1(新生)兔子,5对
第六月 A兔子,A_4(新生)兔子,A_3兔子,A_2兔子,A_2_1(新生)兔子,A_1兔子,A_1_2(新生)兔子,A_1_1兔子,8对   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP