while循环求,1+1/2+1/3+1/4…..1/n>10,求n的最小值?(C++语言)

如题所述

1楼的哥们显然错了,因为第一个循环之后你就退出循环了,应该是:

float n = 1; float sum = 0;
while(sum<=10)//只要总数还没大于10,也就是小于等于10的时候,就一直循环
{
    sum = sum + 1.0/n; 
    n++;
}

float result = n-1;//因为满足条件后n++又执行了一次,导致结果大了1
cout<<result;

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-11-16
#include <stdio.h>
int main() {
    int n = 1;
    double sum=0;
    while (sum<=2) {
        sum += 1.0/n;
        n++;
    };
    printf("%d\n", n);
    return 0;
}

相似回答