正の整数を質量係数に分解します.例えば入力90、出力90=2*3*3*5です.
954 ワード
#include
#include
#include
int main(){
int i,n,j,count=0;
int *A,m=0;
printf_s("enter(n>=2):
");
scanf_s("%d", &n);
//
for (i = 2; i <= n; i++){
for (j = 2; j <= sqrt(i); j++){
if (i%j == 0) break;
}
if (j > sqrt(i)) count++;
}
A = (int*)malloc(sizeof(int)*count);
for (i = 2; i <= n; i++){
for (j = 2; j <= sqrt(i); j++){
if (i%j == 0) break;
}
if (j > sqrt(i)){
A[m] = i;
m++;
}
}
printf_s("%d=", n);
i = 0;
do{
while(n%A[i] == 0) {
n = n / A[i];
printf_s("%d", A[i]);
if (n>1)printf_s("*");
}
i++;
} while (n!=1);
printf_s("
");
return 0;
}