這道題目是一個數學題目,就是連續分數的相加,一開始想應該有公式的吧,想想還真沒見過是那個公式,數據量也不算太大,就暴力來做了。需要用到強制轉換:sum+=(float)1/n;
#include"iostream"
#include<stdio.h>
using namespace std;
int main()
{
float a, sum=0;
int n;
scanf("%f",&a);
while(a != 0.00)
{
for(n=2,sum=0; sum<a; n++)
{
sum += (float)1/n;
}
printf("%d card(s) \n",n-2);
scanf("%f",&a);
}
return 0;
}
#include<stdio.h>
using namespace std;
int main()
{
float a, sum=0;
int n;
scanf("%f",&a);
while(a != 0.00)
{
for(n=2,sum=0; sum<a; n++)
{
sum += (float)1/n;
}
printf("%d card(s) \n",n-2);
scanf("%f",&a);
}
return 0;
}