01/10/2018, 17:26

Code tính lãi kép khi nhập giá trị nhỏ thì chạy bình thường mà nhập giá trị lớn thì không ra kết quả

#include <stdio.h>
#define x 0.1
float laikep(float y,int n)
{	
	if(n==0)	
	return y;
	return laikep(y,n-1)*(1+x);
	
}
int main()
{
	float y;
	int n;
	printf("Nhap so tien muon gui:");
	scanf("%f",&y);
	printf("Ban muon gui bao nhieu nam :");
	scanf("%d",&n);
    printf("Tien lai la : %f
",laikep(y,n));
	return 0;
}
Trần Hoàn viết 19:42 ngày 01/10/2018

Nếu muốn làm việc với số lớn thì bạn phải dùng kiểu dữ liệu của số lớn và phương thức nhập tương ứng.

LuongSonBa viết 19:31 ngày 01/10/2018

Bạn chỉ rõ hơn được k. Mình mới học C nên k rõ lắm

rogp10 viết 19:32 ngày 01/10/2018

Dùng double thay cho floatfloat chỉ đúng 8 chữ số thập phân, double khoảng 21.

Còn muốn tính chằn chặn luôn thì tự viết, coi như bài tập

Bài liên quan
0