Veröffentlicht 22. Juli 200421 j hallo alle zusammen muß zu folgendem javascript programm ein struktogram erstellen aber weiß nicht genau wie ich das genau anstellen soll mit den vielen funktionen vieleicht könnt ihr mir ja dabei helfen hier das progamm: -------------------------------------------------------------------------- <html> <head> <title>Primzahlengenerator</title> <script language="JavaScript"> var ausgabe="" var sek; var ms; var endSek; var endMs; function erato(limit) { var prim = new Array(limit) var zeit = new Date(); ms = zeit.getMilliseconds(); sek = zeit.getSeconds(); ms = zeit.getMilliseconds(); for (i=0;i<=limit;i++) { prim = 1 } streichen = 1 while (streichen <= limit) { streichen += 1 while (prim[streichen] == 0) { streichen += 1 } vielfache = streichen while (vielfache <= limit) { vielfache += streichen prim[vielfache] = 0 } } ausgabe = "" zaehler = 0 for (i=2;i<=limit;i++) { if (prim != 0) { zaehler += 1 ausgabe = ausgabe + i + " " } } var endZeit = new Date(); endMs = endZeit.getMilliseconds(); endSek = endZeit.getSeconds(); // Zeitdifferenz berechnen sek = sek*1000 + ms; endSek = 1000*endSek + endMs - sek; ausgabe = ausgabe + "\n" + "-----------" + "\n" + zaehler + " Primzahlen bis " + limit + " Die Zeit betrug: " + endSek + " ms"; } function berechne(f) { limit = f.text1.value if (limit > 100000) { alert("Bitte Limit bis 100000 eingeben !") } else { erato(limit) f.ergebnis.value = ausgabe } } </script> </head> <body bgcolor="#008080"> <h1>Primzahlengenerator</h1> (Sieb des ERATOSTHENES) <form> <p> Zeige mir bitte die Primzahlen bis <input type="text" name="text1" size="5"> an.(max. bis 100000)<br> <br> <input type="button" value=" Errechne Primzahlen " name="button1" onClick="berechne(this.form)"> <br> <br><textarea rows="25" cols="100" name="ergebnis"></textarea> </p> </form> </body> </html> -------------------------------------------------------------------------- ist bestimmt nicht perfekt aber ich hab ja auch grad erst angefangen mit der ausbildung... zb stimmt die zeitausgabe nicht mehr wenn ich über eine bestimmte zeit zum berechnen komme da ich in ms gerechnet habe und wenn es zu lange dauert (>36 sek glaub ich) gibt er mir einen negativen wert vieleicht habt ihr da ja auch ne lösung für mich ich bedanke mich schon mal bis dann
22. Juli 200421 j Also das die Zahl irgendwann negativ wird liegt wohl daran dass ein Überlauf stattfindet, sprich die Zahl wird zu gross. Um das zu vermeiden musst du einen anderen Datentyp für die entsprechende Variable wählen, allerdings hat JavaScript meines wissens keine 'richtigen' Datentypen - habe auf die schnelle auch nichts gefunden.
27. Juli 200421 j Auf jeden Fall musst Du zwei Struktogramme erstellen. Einmal für function erato(limit) und function berechne(f). Wie man Struktogramme erstellt, schaust Du am besten im Internet nach. Dritter Treffer bei google.de: http://www.icc-computer.de/ingo/diplom/doc/tutor.html Da gibt es einige Beispiele.
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.