编写一个具有两个线程的程序,第一个线程求10~20之间的素数和它们的和,第二个线程求1000~2000之间的素数和它们的和

实现思路:首先写一个判断素数的方法。
  public static boolean isPrime (int num) {
    
    
        int sqrt = (int) Math.sqrt (num);
        for (int i = 2 ; i <= sqrt ; i++) {
    
    
            if (num % i == 0) {
    
    
                return false;
            }
        }
        return true;
    }

接着创建两个线程,我这里用的是匿名内部类创建子类对象,重写run方法,让run方法执行判断素数的结果,如果是素数打印出来,定义一个sum累加和记录10-20的素数和。第二个线程也是一样的。

/**
 * Created with IntelliJ IDEA.
 *
 * @Author: 管坤坤
 * @Date: 2021/12/06/8:53
 * @Description:编写一个具有两个线程的程序,第一个线程求10~20之间的素数和它们的和,第二个线程求1000~2000之间的素数和它们的和。
 */
public class threadDemo12  extends  Thread {
    
    
    public static boolean isPrime (int num) {
    
    
        int sqrt = (int) Math.sqrt (num);
        for (int i = 2 ; i <= sqrt ; i++) {
    
    
            if (num % i == 0) {
    
    
                return false;
            }
        }
        return true;
    }
    public static void main (String[] args) {
    
    
        Thread t1 = new Thread () {
    
    
            @Override
            public void run () {
    
    
                int sum = 0;
                for (int k = 10 ; k <= 20 ; k++) {
    
    
                    if (isPrime (k)) {
    
    
                        sum += k;
                        System.out.print (k + " ");
                    }
                }
                System.out.println ("10-20的素数和"+sum);
            }

        };
            Thread t2 = new Thread () {
    
    
                @Override
                public void run () {
    
    
                    int sum = 0;
                    for (int k = 1000 ; k <= 2000 ; k++) {
    
    
                        if (isPrime (k)) {
    
    
                            sum += k;
                            System.out.print (k + " ");
                        }
                    }
                    System.out.println ("1000-2000的素数和"+sum);
                }
            };
            t1.start ();
            t2.start ();
        }
    }



执行结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/c5db351e820e46708bf03eebdb48489a.png)

猜你喜欢

转载自blog.csdn.net/guankunkunwd/article/details/121799653