java里怎么统计并输出m 和n之间的素数的个数以及这些素数的和。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java里怎么统计并输出m 和n之间的素数的个数以及这些素数的和。相关的知识,希望对你有一定的参考价值。

package answer;

public class Zhishu
int num = 0;
int sum = 0;

String str = "质数包括";

public void setNum(int m, int n)
if (m < 1 || n < m)
System.out.println("初始化M或N输入有误");

for (int i = m; i < n; i++)
if (check(i))
sum += i;
num++;
str += i + ";";



System.out.println("个数:" + num);
System.out.println("总和:" + sum);
System.out.println(str);


public boolean check(int x)
if (x == 1)
return false;

// 只需遍历一半数字即可
for (int i = 2; i <= x / 2; i++)
if (x % i == 0)
return false;

return true;


public static void main(String[] args)
int m = 1;
int n = 20;
Zhishu z = new Zhishu();
z.setNum(m, n);


楼主可以根据自己的需求,修改M和N的值,这段程序加入了一些负值判断以及M,N基本条件的判断,有任何问题可以追问~希望能帮助到你。
参考技术A 只是参考,还差m、n的

public class P
public static void main (String args[])
int prime[]=new int[10];
int j=2;
int i=0;
int count=0;
int sum=0;
for(i=1000;i>=3;i--)
boolean isPrime=true;
for(j=2;j<=i-1;j++)
if(i%j==0)
isPrime=false;
break;


if(isPrime)
prime[count++]=i;
if(count==10)
break;




for(int n=0;n<prime.length;n++)
System.out.println(String.format("%2d",n+1)+":"+prime[n]);
sum=sum+prime[n];

System.out.println("Sum="+sum);

参考技术B public class Shusu
blooen a=turn;
int count;
double sum;
for(int i=m;i<n;i++)
for(int j=2;j<i;j++)
if(i/j==0)
break;
a=false;

if(a=turn)
count++;
sum=sum+i;
System.out.println(“素数的个数“+count+"素数的和"+sum);


1.求100-300间的所有素数,按每行10个数输出,并求出输出怎么做?

参考技术A Java实现:
public class PrimeNumbers
public static void main(String[] args)
// 枚举100-300之间的数字
for (int num = 100; num <= 300; num++)
// 判断是否是素数
boolean isPrime = true;
for (int i = 2; i < num; i++)
if (num % i == 0)
isPrime = false;
break;


if (isPrime)
System.out.print(num + " ");
// 每输出10个数字换行
if (num % 10 == 0)
System.out.println();





PHP实现:

<?php
// 枚举100-300之间的数字
for ($num = 100; $num <= 300; $num++)
// 判断是否是素数
$isPrime = true;
for ($i = 2; $i < $num; $i++)
if ($num % $i == 0)
$isPrime = false;
break;


if ($isPrime)
echo $num . " ";
// 每输出10个数字换行
if ($num % 10 == 0)
echo "<br>";



?>
C语言:

#include <stdio.h>
int main()

// 枚举100-300之间的数字
for (int num = 100; num <= 300; num++)
// 判断是否是素数
int isPrime = 1;
for (int i = 2; i < num; i++)
if (num % i == 0)
isPrime = 0;
break;


if (isPrime)
printf("%d ", num);
// 每输出10个数字换行
if (num % 10 == 0)
printf("\n");



return 0;

Python实现:
# 枚举100-300之间的数字
for num in range(100, 301):
# 判断是否是素数
for i in range(2, num):
if num % i == 0:
break
else:
print(num, end=" ")
# 每输出10个数字换行
if num % 10 == 0:
print()
参考技术B Java实现:
public class PrimeNumbers
public static void main(String[] args)
// 枚举100-300之间的数字

以上是关于java里怎么统计并输出m 和n之间的素数的个数以及这些素数的和。的主要内容,如果未能解决你的问题,请参考以下文章

1.求100-300间的所有素数,按每行10个数输出,并求出输出怎么做?

Python练习题4.2统计素数并求和

输出[m,n]之间的素数,用c语言编程怎么写。谢谢,

C语言m~n之间的素数

求m至n之间的所有素数(编程)

C语言求助,《求m和n之间的所有素数》