C言語判定素数

773 ワード

  :  1      ,           。
          17    ,      2~16       。        m     ,   m 2~m-1          ,        ,  m      
  :m   2~m-1          ,   2~√m              。
#include 
#include 
int main(){
	int m,i,k,flag;
	printf("set m:");
	scanf("%d",&m);
    k=sqrt(m);
	for(i=2;i<=k;i++){ 
		if(m%i==0){
			flag = 0;
			break;
		}else
			flag = 1;
	}
	if(flag==0||m==1){
		printf("no");
	}else{
		printf("yes");
	}
	return 0;
} 

どうして1は素数ではありませんか.
答え:整数は1つの性質があって、分解の質の因数の唯一性で、つまり1より大きい整数を質の因数を分解して、彼の形式は唯一の例えば12=2です²*3        18=2*3²一方、1が素数であれば、分解の形式は唯一であり、いくつかの1を乗算することができるからである.だから規定1は素数ではありません