怎样用电脑编程来判断一个数是否是质数?
发布网友
发布时间:2022-05-23 09:59
我来回答
共4个回答
热心网友
时间:2023-10-20 04:35
n 为要验证的数
For i = 2 To Int(Sqr(n))
'从2开始,到根号n(取整数)循环
I f n Mod i = 0 Then Exit For
’如果i除n的余数为0,则退出循环
Next i
If i > Int(Sqr(n)) Then
'如果i>根号n(取整数),说明没有提前退出循环
Print n & 不是素数;
'打印:
End If 给你一个Java的例子,希望有用//质数(又称为素数)就是在所有比1大的整数中,除了1和它本身以外,不再有别的约数,这种整数叫做质数或素数。
class Test
{
public static void main(String args[])
{
System.out.print("请输入数字:");
java.util.Scanner input = new java.util.Scanner(System.in);
int num1 = input.nextInt();
int x = 0;
for(int i=2;i<num1;i++)
{
if(num1 % i == 0)
{
x=1;
break;
}
}
if(x==1)
{
System.out.println("您输入的数字:" + num1 +"是质数。");
}
else
{
System.out.println("您输入的数字:" + num1 + "不是是质数!!");
}
return;
}
}
热心网友
时间:2023-10-20 04:35
这个算法的意思大概就是从2开始除这个数一旦可以被他整除遍返回并输出不是素数如果不能继续除 直到除到n开根号为止 因为小数都除过了 后面的大数就没必要再除了如果循环到这 依然还不能被整除说明这个数是素数 并输出提示如果你对我的回答满意 请选为满意答案 #include<iostream.h>
#include<math.h>
void main()
{
int n,i;
cout<<"输入一个整数:";
cin>>n;
for(i=2;i<sqrt(n);i++)
if(n%i==0)
{
cout<<"该数不是素数"<<endl;
return;
}
cout<<"该数是素数"<<endl;
}
热心网友
时间:2023-10-20 04:36
public class Sushu { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int s = 19;
int x=0; for (int n = 2; n < s; n++) {
if (s % n == 0) {
x=1;
} }
if(x==1){
System.out.print("不是素数"+s);
}else{
System.out.print("是素数"+s);
}
}}
热心网友
时间:2023-10-20 04:36
判断它是否被2到它一半的整数整除