01/10/2018, 11:49
Viết chương trình tính 1+1/2! +1/3!+.. + 1/n kết quả cứ ra 0.0
Mọi người giúp em với em thử nhiều cách mà nó vẫn ra kết quả 0.0 ạ
int a;
double giaithua(int);
double tinh(int);
int main()
{
printf("Nhap mot so:"); scanf_s("%i", &a);
tinh(a);
printf("Ket qua la: %.5lf", tinh);
_getch();
}
double tinh(int m)
{
int i;
double sum = 0.0;
for (i = 1; i <= m; i++)
{
sum += giaithua(i);
}
return sum;
}
double giaithua(int n)
{
double j;
double tich = 1.0;
for (j = 1; j <= n; j++) tich *=j;
return tich;
}
Bài liên quan
Đoạn:
tinh(a);
printf(“Ket qua la: %.5lf”, tinh);
bạn thay bằng:
printf(“Ket qua la: %.5lf”, tinh(a));
rồi thử lại xem.
Hàm của bạn là hàm có return là double, không phải là hàm void, cũng không có biến & (theo mình nhớ thì gọi là biến tham số hay j đó). Việc bạn thực hiện một lệnh đơn lẻ lệnh tinh(a); không có tác dụng gì cả.
em cảm ơn ạ. em đã làm được