在不使用函数pow的情况下计算表达式的总和?

时间:2015-01-26 21:26:56

标签: c++

#include<iostream>
using namespace std;
int main(){
    double s=0;
    double p=1;
    int n;
       cin>>n;
 for(int i=1 ; i<=n ; i++){
    for(int j=1 ; j<=i; j++){
       p=p*(1/i);
  }
    s=s+p;
    p=1;
}
  cout<<s;
  return 0;
}

我应该计算总和:(1/1)^ 1 +(1/2)^ 2 + ... +(1 / n)^ n。 但也许我的逻辑错了,因为程序返回数字1。

1 个答案:

答案 0 :(得分:1)

你正在进行积分除法,分子为double

使用:

 p = p* ( 1.0/i );
相关问题