題目描述
已知:Sn=1+1/2+1/3+…+1/n,顯然對于任意一個整數 k,當 n 足夠大的時候,Sn>k,
現給出一個整數 k,要求計算出一個最小的 n,使得 Sn>k,
輸入格式
一個正整數 k,
輸出格式
一個正整數 n,
輸入輸出樣例
輸入 #1
1
輸出 #1
2
說明/提示
【資料范圍】
對于 100% 的資料,1≤k≤15,
#include<iostream>
using namespace std;
int main()
{
int k,n=0,i;
cin>>k;
double s; //s為小數
for(i=1; ;i++) //回圈無上界,用一個空格代替
{
s=s+1.00/i; //計算時1用1.00表示,這樣計算出來的s才為小數
n++;
if(s>k)
{
break;
}
}
cout<<n;
return 0;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/259232.html
標籤:其他
下一篇:超級簡單反匯編破解一個小程式
