Frage:
Drucken Sie alle Primzahlen innerhalb N aus
(Teilen des Video-Tutorials: Java-Kurs)
Idee:
Die Definition einer Primzahl ist, dass ihre Faktoren nur 1 und sie selbst sind, also Wir urteilen Zu diesem Zeitpunkt kann basierend darauf bestimmt werden, ob die durchquerte Zahl andere Faktoren als 1 und sich selbst hat. Gleichzeitig wissen wir, dass, wenn es einen Faktor gibt (das heißt, wenn es sich um eine zusammengesetzte Zahl handelt), dieser Faktor kleiner als diese Zahl sein muss, und wir werden ihn eliminieren.
Code-Implementierung:
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)); } }
Verwandte Empfehlungen: Erste Schritte mit Java
Das obige ist der detaillierte Inhalt vonJava gibt alle Primzahlen innerhalb von N aus. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!