다음 수학에서 양수 값을주는 첫 번째 자연수를 계산하는 프로그램이 필요했습니다. 기능. F (X) = 0.001 - (1/x)를출력이 올바르지 않은 이유를 지정할 수 없습니다.
#include<iostream>
using namespace std;
long double abso (long double x)
{
return (x > 0 ? x : -x);
};
int main()
{
long double y=0,x=0;
for (register long double n=0; y<=0 ;)
{
n++;
y = 0.001 - (1/x);
x=n;
};
cout<< "The number is "<< x <<'\n';
system ("pause");
}
는 1001 주기로하지만 이
사람이 코드에서 오류로 저를 참조 할 수 있습니다 나에게 1002
를 준거야?
놀라운 것은 아닙니다. '1/x'에서 사용 된'x'는 마지막 반복에서 왔습니다. – chris
나는'1001'을 얻는다. 부동 소수점 정밀도 문제로 인해 야합니다. –
[내가 1001을 가지고] (http://coliru.stacked-crooked.com/view?id=0f024e7427b2c8fa) – 0x499602D2