作者sb0917 (QQ)
看板NTUBIME101HW
标题[C++] 费事数列-loop
时间Thu Oct 23 20:39:15 2008
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double f1=0,f2=1,temp;
for(int i=1;i<=100;i++)
{
if(i == 1)
cout << "f(" << i << ") = " << setprecision(0) << fixed
<< f1 << endl;
else if(i == 2)
cout << "f(" << i << ") = " << setprecision(0) << fixed
<< f2 << endl;
else
{
cout << "f(" << i << ") = " << setprecision(0) << fixed
<< f1 + f2 << endl;
temp = f2;
f2 = f1 + f2;
f1 = temp;
}
}
system("pause");
return 0;
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.232.115.60
1F:→ sb0917:84项以後就都不准了... 10/23 20:40
2F:推 typenephew:上课五分钟就写完了 尚轩兄真神人也 10/23 20:52
3F:→ sb0917:有没有人知道要怎样用更简短的方式让他不显示小数点以下阿? 10/23 20:54
4F:→ ck940560:嘿~我上课的时候竟然没想到可以用i解决前两项... 10/23 21:50
5F:→ ck940560: if 10/23 21:50
6F:→ sb0917:其实如果不管概念的话,前面两个if可以改成一个... 10/24 00:57
7F:推 zumwohl:为什麽这样做84项以後会不准? 10/26 17:11
8F:→ sb0917:因为浮点数位数不够了,後面会全部都是零 10/26 17:27
9F:推 Ketr:cout加上unsigned增加记载空间,不知道会不会多一两项? 10/26 18:09
10F:→ sb0917:不,浮点数能算到几位是固定的,这也是上次出bonus的原因 10/26 18:32
11F:→ ck940560:unsign也顶多把能算的数字变两倍,没办法进位 10/26 19:33