Code:
#include <iostream>
#include <math.h>
using namespace std;
long double giaithua(int n)
{
long double giai = n;
if(n == 1)
return 1;
else
giai *= giaithua(n-1);
return giai;
}
int main()
{
long double x = giaithua(70);
cout << fixed << x << endl;
double y = pow(10, 25);
cout << endl << fixed << y;
}
Theo mình được biết thì kiểu double có giá trị trong khoảng 2.2E(-308) -> 1.8E(+308). Vậy thì kết quả vẫn có thể hiện hết đuợc.
Nhưng kết quả mình nhận được là.
Code:
11978571669969891793327339282102242518556004970550477140128689166983962506507238
776367392931467755520.000000
10000000000000000905969664.000000
Nhờ ai biết chỉ giùm.
À còn thêm cái này nữa, các bạn có để ý thấy cái #include <math.h> không, không hiểu sao mà #include <cmath> không đuợc.