配色: 字号:
输出1000以内的素数三种方法
2012-09-12 | 阅:  转:  |  分享 
  
usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

//判断一个数是不是素数N

//算法:让i(i从2到N-1)去除以N,如果N能被2~N-1中的任何一个数整除,则判定N不是素数

namespacePrimeEg

{

classProgram

{

staticvoidMain(string[]args)

{

//方法一

//intintN;//作为需要输出的数

//intintCount=0,num=0;//计数

//bools;

//Console.WriteLine("1000以内的素数:");

//for(intN=3;intN<1000;intN=intN+2)//偶数排除

//{

//s=true;

//for(intj=2;j
//{

//if(intN%j==0)

//s=false;

//}

//if(s)

//{

///--此处设置仅为输出好看些--/

//if(intN<=11)

//{

//Console.Write(intN+"");

//}

//elseif(intN<=97)

//{

//Console.Write(intN+"");

//}

//else

//{

//Console.Write(intN+"");

//}

///-----------------------/

//intCount++;

//if(intCount%14==0)

//{

//num++;

//Console.WriteLine();

//}

//}



//}

//Console.WriteLine("\n一共有{0}行,每行14个素数,一共{1}个素数!",num+1,intCount);

//方法二

//inti,j,k;

//intintCount=0;//用来计数:素数的个数

//Console.WriteLine("1000以内的素数:");

//for(i=3;i<=1000;i=i+2)//排除偶数部分,因为偶数不可能是素数

//{

//k=Convert.ToInt32(Math.Sqrt(i));

//for(j=2;j<=k;j++)

//{

//if(i%j==0)//如果其中有数字则退出

//break;

//if(j>=k)//如果一个数都没有将此数整数则输出此数(注意此处的j>=k)

//{

//Console.Write(i+"");

//intCount++;

//if(intCount%14==0)

//{

//Console.WriteLine();

//}

//}

//}

//}

//方法三

intintBegin=3,intRaise=2;

ID:

intBegin++;

while(intBegin<=1000)

{

if(intBegin%intRaise==0)

gotoID;

if(intRaise>=intBegin/2)

{

Console.Write(intBegin+"");

intRaise=2;

gotoID;

}

else

++intRaise;

}

Console.WriteLine();

}

}

}



献花(0)
+1
(本文系Honey_Dog首藏)