养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

素数算法判断一个数是否是素数C#实现

时间:2024-09-22 07:12:03

素数:首先是一个大于1的整数,除了一和它本身不能别任何数整除。今天我就来实现素数的算法,通过算法来判定一个数是不是素数,并得到100以内的素数。程序执行界面图如下:

素数算法判断一个数是否是素数C#实现

工具/原料

visualstudio2010

方法/步骤

1、打开visualstudio软件,进入菜单“文件”->新建->新建项目。选择windows窗体程序,项目名为“SuShu”。

素数算法判断一个数是否是素数C#实现

2、在窗体上添加控件:lable控件,text值为“输入一个数,判断是否是素数”;一个textbox控件(tb_inputvalue),用来输入要判断的素数。一个按钮“判断”(btn_pd),判断是不是素数。一个大按钮(btn_hq),获取前一百的素数用richTextBox1来保存获取到的素数。

素数算法判断一个数是否是素数C#实现

3、素数设计算法

素数算法判断一个数是否是素数C#实现

4、素数设计算法:取消检测区间,提高程碌食撞搁序效率。我们可以只判断2到n/2之间的数,就可以知道他是不是素数了,因为2*n/2等价于n/2忮氽阝另*2,其实我们还可以进一步的缩短区间。我们知道x^2=n,那么n可能等于(x-a)*(x+b),同理(x+b)*(x-a)同一个表达式,那么我们完全可以只判断2-根号下n这个区间就可以了。publicboolsushu(intvalue){doublen=Math.Round(Math.Sqrt(value));//MessageBox.Show(n.ToString());for(inti=2;i<=n;i++){if(value%2==0)returnfalse;}returntrue;}

素数算法判断一个数是否是素数C#实现

5、获取前100之间的所有素数:从2到一百挨个判断,鋈守踬痊是素数就记录下来。privatevoidbtn_hq_Click(objectsender,EventArgse){for(in墉掠载牿ti=2;i<=100;i++){if(sushu(i)){richTextBox1.AppendText(i+"\t");}}}

素数算法判断一个数是否是素数C#实现

6、判断一个数是不是素数:if(sushu(Int32.Parse(tb_inputvalue.Text))){MessageBox.Show(tb_inputvalue.Text+"是素数");}else{MessageBox.Show(tb_inputvalue.Text+"不是素数");}

素数算法判断一个数是否是素数C#实现

7、编译运行程序,我们输入67,检测67是不是素数。根据执行结果是素数和实际符合。

素数算法判断一个数是否是素数C#实现

8、编译运行程序,获得前100的素数

素数算法判断一个数是否是素数C#实现

© 一点知识