Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
mọi người cho mình hỏi làm sao để lấy được kết quả đúng trong trường hợp kích cỡ của kết quả lơn hơn kiểu dữ liệu mình dặt cho nó
mình đang làm bài toán tính tổ hợp chập m của n kết quả vẫn ra đúng với n=13 nhưng từ 14 trở đi kích cỡ của tử số với mẫu số nó lớn hơn với kiểu dũ liệu mình đặt cho nó
#include<stdio.h>
#include<conio.h>
int giai_thua(int m)
{
int s=1;
for(;m>0;--m){
s*=m;
}
}
main()
{
int m,n,i;
long int tu_so,s,mau_so;
tt:
printf("\nnhap gia tri:\n");
printf("n=");
scanf("%d",&n);
printf("\nm=");
scanf("%d",&m);
i=m;
mau_so=giai_thua(m);
for(s=1;i>0;--i)
{
s*=(n-m+i);
}
tu_so=s;
printf("\nhop_so=%ld",tu_so/mau_so);
goto tt;
}
Bạn có thể tìm hiều về tính toán số nguyên lớn trong C