JAVA问题!!有偿答题急急急!!

求1到99999999中有几个合数 用代码表示出来 还有输出结果eclipse操作 类名为Test

public class Test {
public boolean isPrime(int k) {
boolean flag = true;
int max = (int) Math.sqrt(k);
if(k==1||k==0){
flag = false;
}
for (int i = 2; i <= max; i++) {
if (k % i == 0) {
flag = false;
break;
}
}
return flag;
}
public static void main(String args[]){
Test t=new Test();
boolean s;
int count = 0;
for(int i=0; i<99999999; i++) {
    if (!t.isPrime(i)) {
       count++;     
    }

}

System.out.println(count);

}

 

public class Test {
public boolean isPrime(int k) {
boolean flag = true;
int max = (int) Math.sqrt(k);
if(k==1||k==0){
flag = false;
}
for (int i = 2; i <= max; i++) {
if (k % i == 0) {
flag = false;
break;
}
}
return flag;
}
public static void main(String args[]){
Test t=new Test();
int count = 0;
for(int i=0; i<99999999; i++) {
    if (!t.isPrime(i)) {
       count++;     
    }
 
}
 
System.out.println(count);
 
}

 

写个for循环即可,然后循环内统计一下数量就行了,最后打印

public class Test {

    public static void main(String[] args) {
        // 循环
        int count = 0;
        for (int n = 2; n <= 99999999; n++)
        {
            // 循环相除
            for (int i = 2; i <= Math.sqrt(n); i++)
            {
                // 如果找到一个数能整除,则为合数
                if (n % i == 0)
                {
                    count++;
                    // 跳出循环
                    break;
                }
            }
        }
        System.out.println(count);
    }
}

以上。

import java.util.ArrayList;
import java.util.List;

public class Test {
    public static void main(String[] args) {
        List<Integer> list = new ArrayList<>();
        Integer max = 99999999;
        for (int i=1;i<=max;i++){
                Boolean flag = false;
                for (int j =0;j<max;j++){
                    if (j==1 || j==1 || j==i){
                        continue;
                    }
                    if (j%i==0){
                        flag = true;
                        break;
                    }
                }
                if (flag){
                    list.add(i);
                }
        }
        System.out.println("数量是:" + list.size());
        System.out.println("数据是:" + list);
    }
}

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632


public class Test {
    public static void main(String[] args) {
        int count = 0;
        for (int i = 2; i <= 99999999; i++) {
            if (!isPrime(i)) { // 如果不是质数,则是合数
                count++;
            }
        }
        System.out.println("1到99999999中有" + count + "个合数。");
    }

    // 判断一个数是否为质数
    public static boolean isPrime(int n) {
        if (n <= 1) {
            return false;
        }
        for (int i = 2; i <= Math.sqrt(n); i++) {
            if (n % i == 0) {
                return false;
            }
        }
        return true;
    }
}

使用了一个循环来遍历1到99999999中的所有数字,每次判断该数字是否为质数,如果不是质数,则累计合数的个数。

判断质数的方法是,从2开始到该数的平方根之间遍历所有数字,如果其中有一个数字能整除该数,则该数不是质数,否则是质数。