一个计算质数的小程序

发表于:2007-06-30来源:作者:点击数: 标签:
刚刚开始学C#,这是做的第一个很小很小的小程序:计算质数。做的比较烂,不要见笑! http://true5460.muicc.com/other/calPN.zip 以下是源码: using System; class test { static void Main() { ulong i; while(true) { Console.Write(请输入要计算的质数(
刚刚开始学C#,这是做的第一个很小很小的小程序:计算质数。做的比较烂,不要见笑!

http://true5460.muicc.com/other/calPN.zip

以下是源码:

using System;

class test
{
static void Main() {
ulong i;
while(true) {
Console.Write("请输入要计算的质数(0退出):");
i=Convert.ToUInt64(Console.ReadLine());
if(i==0) break;
DateTime t1 = DateTime.Now;
switch(i) {
case 1:Console.WriteLine("1 不是质数!");break;
case 2:Console.WriteLine("2 是质数!");break;
default:cal(i);break;
}
DateTime t2 = DateTime.Now;
Console.WriteLine("时间为:{0} 毫秒 ",(t2-t1).Ticks/10000f);
}
}

//以下为函数部分

static void cal(ulong x) {
ulong sum=1;
byte row=1;
Console.Write(" ");
for(ulong a=3;a<x+1;a++) {
bool flag=true;
for(ulong b=2;b<(a/2)+1;b++) { if(a%b!=0) continue;
flag=false;
break;
}
if(flag) {
if(row==10) { Console.WriteLine();row=0; }
if(sum==1) Console.Write("{0,7}",2);
Console.Write("{0,7}",a);
sum++;row++;
}

}
Console.WriteLine(" {0} 以内共有 {1} 个质数 ",x,sum);

}

}



原文转自:http://www.ltesting.net