C#判断数字是否是质数代码 20
输入正整数N,判断N是否为质数。在如下所示的窗体中,用户在文本框(textBox1)中输入一个正整数值,判断该数是否为质数,如果是,在label2中输出:该数是质数,否则...
输入正整数N,判断N是否为质数。在如下所示的窗体中,用户在文本框(textBox1)中输入一个正整数值,判断该数是否为质数,如果是,在label2中输出:该数是质数,否则输出:该数不是质数。
注:所谓质数,就是一个正整数,除了本身和1 以外不能被其他任何数整除。例如2,3,5,7 是质数(这4个数只能被1和本身整除);而4(可以被2整除),6(可以被2和3整除),8(可以被2和4整除),9(可以被3整除)则不是 展开
注:所谓质数,就是一个正整数,除了本身和1 以外不能被其他任何数整除。例如2,3,5,7 是质数(这4个数只能被1和本身整除);而4(可以被2整除),6(可以被2和3整除),8(可以被2和4整除),9(可以被3整除)则不是 展开
4个回答
展开全部
for (int i = 2; i <= int.Parse(this.textBox1.Text); i++)
{
bool flag = true;
int k = Convert.ToInt32(Math.Sqrt(i));
for (int j = 2; j <= k; j++)
{
if (i % j == 0)
{
flag = false;
break;
}
}
if (flag == true)
{
label1.Text += i.ToString() + ",";
}
}
{
bool flag = true;
int k = Convert.ToInt32(Math.Sqrt(i));
for (int j = 2; j <= k; j++)
{
if (i % j == 0)
{
flag = false;
break;
}
}
if (flag == true)
{
label1.Text += i.ToString() + ",";
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上的效率都比较低,下面是效率比较高的判断方法:
// 判断数字是否素数
public static bool IsPrime(int num){
if(num >= 1 && num<=3)
return true;
if(num % 2 == 0)
return false;
// 执行奇数循环
for(int loop = 3; loop <= Math.Sqrt(num); loop+=2){
if(num % loop == 0)
return false;
}
return true;
}
// 判断数字是否素数
public static bool IsPrime(int num){
if(num >= 1 && num<=3)
return true;
if(num % 2 == 0)
return false;
// 执行奇数循环
for(int loop = 3; loop <= Math.Sqrt(num); loop+=2){
if(num % loop == 0)
return false;
}
return true;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public void checkPrime(string val){
int num=0;
try{
num=Convert.ToInt32(val);
}catch{
label2.Text="必须输入数字";
return;
}
if(num<=0){
label2.Text="必须大于0";
return;
}
int iii=num/2;
for(int ii=2;ii<=iii;ii++){
if(num%ii==0){
label2.Text="不是质数";
return;
}
}
label2.Text="是质数";
}
在你要判断的事件中调用这个方法.并把textbox1中的值传进来.如:
checkPrime(this.textBox1.Text);
int num=0;
try{
num=Convert.ToInt32(val);
}catch{
label2.Text="必须输入数字";
return;
}
if(num<=0){
label2.Text="必须大于0";
return;
}
int iii=num/2;
for(int ii=2;ii<=iii;ii++){
if(num%ii==0){
label2.Text="不是质数";
return;
}
}
label2.Text="是质数";
}
在你要判断的事件中调用这个方法.并把textbox1中的值传进来.如:
checkPrime(this.textBox1.Text);
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以用正则表达式解决,很方便
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询