参考代码如下:
packagetest
publicclassTest{
publicstaticvoidmain(String[]args){
intj
for(inti=2i<=100i++)//1不是素数,所以直接从2开始循环
{
j=2
while(i%j!=0)
j++//测试2至i的数字是否能被i整除,如不能就自加
if(j==i)//当有被整除汪宴的数字时,判断它是不是自身
System.out.println(i)//如果是就打印出数字
}
}
}
扩展资料:
质数又称素数。一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做樱冲质数;否则称为合数。
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和困颂银简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
实现代和饥码如下:
public class Su {public static void main(String[] args) {
Scanner in = new Scanner(System.in)
System.out.print("输入个数:")
int[] arr = new int[in.nextInt()]
int num=0
for (int i = 0 i < arr.length i++) {
System.out.print("输入第(" + (i + 1) + ")个数:")
arr[i] = in.nextInt()
唤核返 if(getResult(arr[i])){
num+=1
}
}
氏态 System.out.println("素数个数是:" + num)
}
public static boolean getResult(int num) {
boolean isPrime = true // 定义布尔变量判断是否素数.是:true否:false
int k = (int) Math.sqrt(num)
for (int j = 2 j <= k j++) {
if (num % j == 0) {
isPrime = false // 如果能够有数整除i,那么就不是素数.
}
}
if (isPrime) {
isPrime = true
}
return isPrime
}
}
满意请采纳!
public class PrimeNnmber{
System.out.println("**3——100之间的嫌差姿所有素数 **")
int n=0
for(int i=3i<100i+=2)
{
int k=(int)Math.sqrt(i)
boolean isPrime=true
for(int j=2j<=kj++)
if(i%j==0)isPrime=false
}
if(isPrime)
{
System.out.printf("%4d",i)
n++
if(n%10==0)System.out.println()
}
}
这是我写过的芹绝一个Java程庆高序,看能不能帮到你!希望你能早日解决此问题!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)