/* 010 質因數表示
一個合數表現為質因數乘積形式
例如:
7=1*7
8=2*2*2
15=3*5 */
#include <stdio.h>
int main(void)
{
int n,i,j;
printf("please input a nature number of n: ");
scanf("%d",&n);
for(i=1,j=0;i<=n/2;i++) if(n%i==0) j++; /* 判斷輸入是否為質數 */
if(j==1) printf("%d = 1*%d\n",n,n); /* 輸入為質數之情形 */
else
{
printf("%d = ",n);
for(i=2;i<n;)
{
if(n%i==0)
{
printf("%d*",i);
n/=i;
}
else i++;
}
printf("%d\n",i);
}
return 0;
}
--
※ 發信站: 批踢踢實業坊(ptt.csie.ntu.edu.tw)
◆ From: 140.112.240.76