#include<stdio.h>
#include<conio.h>
int giaithua(int n)
{
int gt = n;
for (int i = 1; i < n; i++)
gt *= i;
return gt;
}
int ktnt(int n)
{
if (n == 1)
return 0;
if (n == 2)
return 1;
for (int i = 2; i*i <= n; i++)
if (n%i == 0)
return 0;
return 1;
}
void phantich(int gt, int a[])
{
for (int i = 0; i < 20; i++)
a[i] = 0;
printf("\nPhan tich N! ra thua so nguyen to: ");
int i = 2, dem = 0;
while (gt>1)
{
if (ktnt(i)==0)
{
i++;
continue;
}
if (gt % i == 0)
{
gt = gt / i;
dem++;
continue;
}
else
{
a[i] = dem;
printf(" %d^%d ", i, dem);
i++;
dem = 0;
continue;
}
}
a[i] = dem;
printf(" %d^%d ", i, dem);
}
void main(void)
{
int n, p, gt, a[20];
printf("Nhap n: ");
scanf("%d", &n);
gt = giaithua(n);
printf("\nN! = %d", gt);
phantich(gt,a);
printf("\nNhap co so P: ");
scanf("%d", &p);
printf("\nSo mu la: %d", a[p]);
getch();
}
Không có nhận xét nào:
Đăng nhận xét