当前位置:首页 » 编程语言 » java素数算法

java素数算法

发布时间: 2025-10-07 01:37:59

⑴ 用java写个程序 判断 用户输入的数 是否是质数

使用java编写判断自然数是否为素数的方式是,使用scanner来接受用户输入的数值,使用素数的算法,实例如下:

Scannersr=newScanner(System.in);
System.out.print("请输入a的值:");
inta=sr.nextInt();
booleanis=true;
if(a<1)
{
System.out.println(a+"不是质数,因为他小于一");
}
else
{
List<Integer>list=newArrayList<Integer>();
for(inti=2;i<a;i++)
{
if(a%i!=1&&a%i!=a)
{
if(a%i==0){
is=false;
list.add(i);
}
}
}
if(is){
System.out.println("a是质数");
}else{
Stringyz="";
for(inti=0;i<list.size();i++)
{
if(yz=="")
{
yz=yz+list.get(i);
}else{
yz=yz+","+list.get(i);
}
}
System.out.println("a不是质数,因为他含有因子"+yz);
}
}

⑵ 用java找出1到100的素数,并求和

intsum=0;
for(inti=2;i<=100;i++){//质数
for(intk=2;k<=i;k++){//除数
//排除所有在i=k之前能被k整除(余数为0)的数
if(i%k==0&&i!=k){
break;
}
//输出所有在i=k且i%k=0的数
if(i%k==0&&i==k){
System.out.println(i);
sum+=i;
}
}
}
System.out.println("sum="+sum);

思路:先说什么是素数。除了1和它本身以外不再有其他的因数就是素数。所以你要做的就是对于一个整数i,让他和比他小的正整数取余数,如果为0的话就肯定不是素数了。如果都不为0且最后只有他本身那么这个数就是素数了。看上面循环,直接从2开始就刨除了1,不然判断条件里面还得写1的判断

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:710
制作脚本网站 发布:2025-10-20 08:17:34 浏览:972
python中的init方法 发布:2025-10-20 08:17:33 浏览:681
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:833
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:741
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1081
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:312
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:192
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:879
python股票数据获取 发布:2025-10-20 07:39:44 浏览:837