Facebook Sharer
选择您要替换的背景颜色:
【农历新年】背景图片:
个性化设定
 注册  找回密码
查看: 1879|回复: 5
打印 上一主题 下一主题

『C++』菜鸟问关于math .__.

[复制链接]

28

主题

10

好友

7462

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

跳转到指定楼层
1#
发表于 2011-11-2 02:50 AM |只看该作者 |倒序浏览
本帖最后由 聖賢 于 2011-11-2 03:06 AM 编辑

请问这个equetion是怎样算的啊....
  1. #include<iostream>
  2. using namespace std;
  3. long fib(long n)
  4. {
  5.   if (n==1)
  6.   return 1;
  7.   else if (n==0)
  8.   return 0;
  9.   else return fib(n-1)+fib(n-2);
  10. }
  11. int main()
  12.       {   
  13.             int x, n, b;
  14.             for(x=0;x<5;x++)
  15.              {
  16.                   cout<<"enter an integer: ";
  17.                   cin>>n;
  18.                   b=fib(n);
  19.                   cout<<"Fibonacci("<<n<<") :"<<b<<endl;
  20.              }               
  21.       system("pause");
  22.       return 0;
复制代码
  1. else return fib(n-1)+fib(n-2);
复制代码
有人可以解释电脑是怎样做这个equetion么??




收藏收藏0

1

主题

0

好友

16

积分

初级会员

Rank: 1

2#
发表于 2011-11-2 04:38 AM |只看该作者
一直recursive到找出答案为止


回复

使用道具 举报

31

主题

0

好友

1228

积分

黄金长老

Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8

3#
发表于 2011-11-2 09:57 AM |只看该作者
let n = 5
fib(5) = fib(4) + fib(3)
fib(4) = fib(3) + fib(2)
fib(3) = fib(2) + fib(1)
fib(2) = fib(1) + fib(0) = 1 + 0 = 1

所以
fib(3) = fib(2) + fib(1) = 1 + 1 = 2
fib(4) = fib(3) + fib(2) = 2 + 1 = 3
fib(5) = fib(4) + fib(3) = 3 + 2 = 5


回复

使用道具 举报

28

主题

10

好友

7462

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

4#
发表于 2011-11-2 05:49 PM |只看该作者
if n=10
   b=55


b=fib(10-1)+fib(10-2)
b怎样=55呢,,,,对不起我真的很笨T.T


回复

使用道具 举报

5

主题

0

好友

444

积分

翡翠长老

Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6Rank: 6

5#
发表于 2011-11-2 06:13 PM |只看该作者
if n=10
   b=55


b=fib(10-1)+fib(10-2)
b怎样=55呢,,,,对不起我真的很笨T.T
聖賢 发表于 2011-11-2 05:49 PM



    let n = 10
fib(10) = fib(9) + fib(8)=55
fib(9) = fib(8) + fib(7)=34
fib(8) = fib(7) + fib(6)=21
fib(7) = fib(6) + fib(5)=13
fib(6) = fib(5) + fib(4)=8
fib(5) = fib(4) + fib(3)=5
fib(4) = fib(3) + fib(2)=3
fib(3) = fib(2) + fib(1)=  2
fib(2) = fib(1) + fib(0)=  1
fib(1) =                             1
fib(0) =    0


回复

使用道具 举报

28

主题

10

好友

7462

积分

百变名嘴

Rank: 13Rank: 13Rank: 13Rank: 13

6#
发表于 2011-11-3 03:13 PM |只看该作者
回复 5# 随苇轻摇


    明白了,
意思就是,,,
fib(4)=fib(3)+fib(2)
fib(4)=( fib(2)+fib(1) ) +( fib(1)+ fib(0) )
是这样么??刚才吃饭的时候在想着就明白了
谢谢哦


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

JBTALKS.CC |联系我们 |隐私政策 |Share

GMT+8, 2024-10-25 07:20 AM , Processed in 0.117852 second(s), 26 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

Ultra High-performance Dedicated Server powered by iCore Technology Sdn. Bhd.
Domain Registration | Web Hosting | Email Hosting | Forum Hosting | ECShop Hosting | Dedicated Server | Colocation Services
本论坛言论纯属发表者个人意见,与本论坛立场无关
Copyright © 2003-2012 JBTALKS.CC All Rights Reserved
合作联盟网站:
JBTALKS 马来西亚中文论坛 | JBTALKS我的空间 | ICORE TECHNOLOGY SDN. BHD.
回顶部