Vorlesung 4 / Aufgabe 3

This commit is contained in:
Sebastian Brosch 2024-05-13 16:03:58 +02:00
parent cba4d08315
commit bf7453a3de
2 changed files with 40 additions and 40 deletions

View File

@ -1,40 +0,0 @@
class Aufgabe {
public static void main(String[] args) {
final int MAXIMUM = 200;
int[] zahlenreihe = new int[MAXIMUM];
// Initialisieren der Zahlenreihe.
for(int i = 0; i < MAXIMUM; i++) {
zahlenreihe[i] = i + 1;
}
// Alle Basen durchlaufen.
for(int i = 0; i <= (MAXIMUM / 2); i++) {
int basis = zahlenreihe[i];
// Alle Basen und Zahlen kleiner als 2 können ignoriert werden.
// Zahlen kleiner als 2 sind keine Primzahlen.
// Eine Base welche keine Primzahl ist wird mit 0 überschrieben ("durchgestrichen").
if(basis < 2) {
continue;
}
// Alle Zahlen der Zahlenreihe durchlaufen um für die Basis passende Zahlen zu finden.
for(int j = i + 1; j < MAXIMUM; j++) {
int zahl = zahlenreihe[j];
// Es ist keine Primzahl wenn die Zahl durch die Basis teilbar ist.
if(zahl % basis == 0) {
zahlenreihe[j] = 0;
}
}
}
// In der Zahlenreihe sind jetzt nur noch Primzahlen vorhanden.
for(int i = 0; i < MAXIMUM; i++) {
if(zahlenreihe[i] >= 2) {
System.out.println(zahlenreihe[i]);
}
}
}
}

View File

@ -0,0 +1,40 @@
package VL04.Aufgabe03;
/**
* Vorlesung 4 / Aufgabe 3
*
* @author Sebastian Brosch
*/
public class Aufgabe03 {
public static void main(String[] args) {
final int MAXIMUM = 50;
int[] numbers = new int[MAXIMUM];
for (int i = 0; i < numbers.length; i++) {
numbers[i] = i + 1;
}
for (int i = 0; i <= (numbers.length / 2); i++) {
int base = numbers[i];
if (base < 2) {
numbers[i] = 0;
continue;
}
for (int j = i + 1; j < numbers.length; j++) {
int number = numbers[j];
if (number % base == 0) {
numbers[j] = 0;
}
}
}
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] > 0) {
System.out.println(numbers[i]);
}
}
}
}