>  기사  >  Java  >  Java는 N 내의 모든 소수를 인쇄합니다.

Java는 N 내의 모든 소수를 인쇄합니다.

王林
王林앞으로
2020-10-26 16:06:402636검색

Java는 N 내의 모든 소수를 인쇄합니다.

질문:

N 내의 모든 소수를 인쇄하세요.

(동영상 튜토리얼 공유: java 강좌)

아이디어:

소수의 정의는 인수가 1과 그 자체라는 것입니다. 이때, 통과한 숫자에 1과 자신 이외의 인자가 있는지 여부에 따라 판단할 수 있습니다. 동시에, 요소가 있는 경우(즉, 합성수인 경우) 요소는 이 숫자보다 작아야 하므로 이를 제거하겠습니다.

코드 구현:

package Algorithm.Interview;

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

public class primeNum {
    public List<Integer> PrintPrime(int n){
        List<Integer> Prime = new ArrayList<>();
        //2也是质数
        Prime.add(2);
        //外循环遍历N以内的所有数,1不是质数,2是质数,所以从2开始遍历
        for (int i = 2; i <= n; i++) {
        //内循环遍历小于要判断的数的因子,即要判断的数是否有除了1和它本身的因子
            for (int j = 2; j < i; j++) {
            	//如果有因子,直接跳出内循环,到外循环遍历下一个数
                if (i % j == 0){
                    break;
                }
                //如果没有因子,判断j = i-1这个数,能循环到i-1说明之前的j都没有跳出循环,来判断最后一个小于i的数是不是i的因子
                else if (j == i -1 && i % j != 0){
                    Prime.add(i);
                }
            }

        }
        return Prime;
    }

    public static void main(String[] args) {
        primeNum primeNum = new primeNum();
        System.out.println(primeNum.PrintPrime(100));
    }
}

관련 권장 사항: Java 시작하기

위 내용은 Java는 N 내의 모든 소수를 인쇄합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제