Programmierung

Sieb des Erastosthenes - JavaScript


 
  1. Aufgabe

    Finden von Primzahlen.

    1. Boolean-Array mit true bis max befüllen
    2. weil 0 und 1 laut Definition keine Primzahl, diese Streichen (durch 0 ersetzen)
    3. dann nächste nicht gestrichen Zahl suchen (2)
    4. um den Wert dieser Zahl weitergehen und streichen (4,6,8,10)
    5. wenn Ende des Arrays erreicht dann zu Punkt 3. gehen
    6. übrig bleiben alle nichtgestrichenen Zahlen -> Primzahlen (2,3,5,7)

  2. Struktogramm

    Sieb des Erastosthenes

  3. Programm

    Bitte die max Zahl eingeben:


  4. Quellcode

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
      <title>
    DG1XPZ - JavaScript-Programmierung, Das Sieb des Eratosthenes</title>
      <script language=JavaScript>
      <!--
      function erastos(){
         var primzahl="";
         var i=0;
         var j=0;
         var max=document.algorithmus.eingabe1.value;
         var primArray=new Array();
         primArray[1]=false;
         for (i=2;i<=max;i++){
            primArray[i]=true;
         }
         for (i=2;i<(primArray.length / 2);i++){
            for (j=2;j<(primArray.length / i);j++){ 
               primArray[(i*j)]=false;
            }
         }
         //Array auslesen und nur die Primzahlen ausgeben (false ignorieren)
         for (i=0;i<primArray.length;i++){
            if (primArray[i]) primzahl=primzahl+i+",";
         }
         document.algorithmus.ausgabe1.value=primzahl;
      }
     //-->
     
    </script>
    </head>
    <body>
    <table height=
    "78" width="476"><tr><td align=center height="74" width="468">
    <form action=
    "" method=post name=algorithmus target="">
    <p align=
    "left">Bitte die max Zahl eingeben:
    <input name=eingabe1 size=10 align=right><br>
    <button onclick=
    erastos( ) value="algorithmus"> berechnen &nbsp;&nbsp;&nbsp;</button><br>
    <input name=
    ausgabe1 size="75">
    </form>
    </td></tr></table>
    </body>
    </html>


  5. Download erastos.html (Rechts-Click, speichern unter)

 

http://www.counter-service.de http://www.counter-service.de

Home
uebermich
Programmierung
Amateurfunk
Elektronik
Download
Links
E-Mail
Gästebuch/Meckerecke
Counter-DG1XPZ