Primzahlen berechnen (noob)


  • Mod

    Ethon schrieb:

    volkard schrieb:

    Was soll der Vortest gegen %2?

    Macht doch Sinn? Jede zweite Zahl fällt durch den Test durch und man spart sich die sauteure Wurzelberechnung.

    Dein Programm schrieb:

    2 ist keine Primzahl

    Jaaaa, macht Sinn.

    volkards Vorschlag, wie man die Grenze stattdessen berechnen sollte, ist schon gut. Nicht nur auf Primzahlen bezogen. Den "Trick" kann man auch sonst sehr oft gebrauchen, wenn es darum geht, Wurzeln zu vermeiden. Die Umkehrung (also das Quadrat) einer Wurzel ist nämlich eine streng monoton steigende Funktion. Das heißt, Ordnung bleibt erhalten, wenn man mit den Quadraten arbeitet, anstatt mit den Wurzeln selbst. Und sehr oft will man bloß wissen, wie ein Wert sich zu einem anderen verhält. Dann greift der Trick.
    Das gilt natürlich auch für andere Funktionen mit dieser Eigenschaft, aber bei Wurzeln ist es mir in der Praxis mit Abstand am häufigsten begegnet.



  • Aber bei

    i*i<=Number
    

    aufpassen, daß man keinen Überlauf bei i kriegt (also bei 32-bit integer nur bis i <= 65535).



  • EDIT: hat sich geklärt, da ließt jemand schneller als er denkt -.-

    Habe mal gehört "goto" soll stilistisch nicht sehr gut sein und bin jetzt gerade von einem anscheinend erfahrenen mitglied darauf gestoßen... Simmt das, oder war das nur einfacher so oder was soll ich für die Zukunft denken?

    mf

    P.S.: Kann man hier keine Beiträge löschen?


  • Mod

    HarteWare schrieb:

    Habe mal gehört "goto" soll stilistisch nicht sehr gut sein und bin jetzt gerade von einem anscheinend erfahrenen mitglied darauf gestoßen... Simmt das, oder war das nur einfacher so oder was soll ich für die Zukunft denken?

    GOTO macht es einfach, unabsichtlich unleserlichen Code zu schreiben.



  • ...



  • HarteWare schrieb:

    EDIT: hat sich geklärt, da ließt jemand schneller als er denkt -.-

    Habe mal gehört "goto" soll stilistisch nicht sehr gut sein und bin jetzt gerade von einem anscheinend erfahrenen mitglied darauf gestoßen... Simmt das, oder war das nur einfacher so oder was soll ich für die Zukunft denken?

    mf

    P.S.: Kann man hier keine Beiträge löschen?

    In verschachtelten Schleifen kann goto ganz hübsch eingesetzt werden.


  • Mod

    Ethon schrieb:

    In verschachtelten Schleifen kann goto ganz hübsch eingesetzt werden.

    Du weißt schon, warum der Spaghetticode Spaghetticode heißt, oder?



  • SeppJ schrieb:

    Ethon schrieb:

    In verschachtelten Schleifen kann goto ganz hübsch eingesetzt werden.

    Du weißt schon, warum der Spaghetticode Spaghetticode heißt, oder?

    Ich schreibe jedenfalls keinen. 😉



  • SeppJ schrieb:

    Ethon schrieb:

    In verschachtelten Schleifen kann goto ganz hübsch eingesetzt werden.

    Du weißt schon, warum der Spaghetticode Spaghetticode heißt, oder?

    Weil das Wort sich gut eignete, um alles, was den Heiligen Lehren der Strukturierten Programmierung nicht entsprach, zu verunglimpfen.
    Das ist zum Glück lange überholt.



  • Swordfish schrieb:

    HarteWare schrieb:

    [...] was soll ich für die Zukunft denken?

    Wenn dir außer goto nichts mehr einfällt, solltest du von vorn' beginnen.

    Nunja zwar ist es wohl keine Meisterleistung eine Alternative dafür zu finden, jedoch wäre der Weg zum Anfang wohl nicht so weit für mich 😃 mfg


Anmelden zum Antworten