Primzahlen bis zu einer angegebenen Zahl

JavaScriptJavaScriptBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden wir uns in die faszinierende Welt der JavaScript-Programmierung vertiefen. Dieses Lab ist so konzipiert, dass es Ihnen helfen soll, praktische Erfahrungen bei der Lösung von Programmierproblemen mit JavaScript zu sammeln. Sie werden lernen, wie Sie mit dem Sieb des Eratosthenes-Algorithmus Primzahlen bis zu einer angegebenen Zahl generieren.

Primzahlen mit dem Sieb des Eratosthenes generieren

Um Primzahlen bis zu einer angegebenen Zahl mit dem Sieb des Eratosthenes zu generieren, folgen Sie diesen Schritten:

  1. Öffnen Sie das Terminal/SSH und geben Sie node ein, um mit der Codeausübung zu beginnen.
  2. Erstellen Sie ein Array, das alle Zahlen von 2 bis zur angegebenen Zahl enthält.
  3. Verwenden Sie Array.prototype.filter(), um die Werte zu filtern, die durch jede Zahl von 2 bis zur Quadratwurzel der angegebenen Zahl teilbar sind.
  4. Geben Sie das resultierende Array mit Primzahlen zurück.

Hier ist der JavaScript-Code, um Primzahlen bis zu einer angegebenen Zahl zu generieren:

const generatePrimes = (num) => {
  let arr = Array.from({ length: num - 1 }).map((x, i) => i + 2),
    sqrt = Math.floor(Math.sqrt(num)),
    numsTillSqrt = Array.from({ length: sqrt - 1 }).map((x, i) => i + 2);
  numsTillSqrt.forEach(
    (x) => (arr = arr.filter((y) => y % x !== 0 || y === x))
  );
  return arr;
};

Sie können die Funktion generatePrimes() aufrufen, indem Sie die gewünschte Zahl als Argument übergeben. Beispiel:

generatePrimes(10); // [2, 3, 5, 7]

Zusammenfassung

Herzlichen Glückwunsch! Sie haben das Lab "Primzahlen bis zu einer angegebenen Zahl" abgeschlossen. Sie können in LabEx weitere Labs absolvieren, um Ihre Fähigkeiten zu verbessern.