注册 登录
编程论坛 C++教室

麻烦高手帮小弟解答下

cyzlovedkj 发布于 2009-11-13 23:41, 409 次点击
编写一个函数,输入n为偶数时,调用1/2+1/4+...+1/n,当输入n为奇数时,调用1/1+1/3+...+1/n。(用递归做)
3 回复
#2
一旋无风2009-11-14 14:41
#include<iostream.h>
void main()
{
int n;double sum=0;
cout<<"请输入n:";
cin>>n;
int i;
i=n%2?1:2;
while(i<=n)
{sum+=1.0/i;
i+=2;
}
cout<<sum<<endl;
}

#3
一旋无风2009-11-14 14:41
o 用递归啊,再来过
#4
一旋无风2009-11-14 14:50
double fun( int m)
{
    if(m==1) return 1;
    if(m==2) return 0.5;
    else
    return fun(m-2)+1.0/m;
}
#include<iostream.h>
void main()
{
int n;double sum=0;
cout<<"请输入n:";
cin>>n;
fun(n);
cout<<"sum= "<<fun(n)<<endl;
}
1