Italia
Fonte/ Codesnippets

Gerade Mathematik Ungerade

 

Normann
Strübli
Ermitteln ob eine Zahl gerade oder Ungerade ist
DEF IsOdd(1) @&(1) & 1 <> 0

If IsOdd (99)

    print "ungerade"

else

    print "gerade"

Endif

 
17.11.2005  
 




Melanie
Brayer
Warum nicht MODulo 2???
 
mele (¯`·.¸¸.{ WinXP Pro, XProfan9, XPIA }.¸¸.·´¯)

<Bugs zählen ist besser als Schafe zählen, da der Computer nur so schlau ist wie der der Mensch der ihn bedient.>
18.11.2005  
 




Normann
Strübli
Ich denke mit MOD ist es ganz einfach langsamer

Aus einem anderen Foro:
[quote:cb43b037ef]
Doch ist es, habe es bei 100.000.000 Vergleichen getestet, die Variante mit if Zahl and 1 = 1 ist um den Faktor 2 schneller als die Variante if Zahl mod 2 = 1.[/quote:cb43b037ef]
 
18.11.2005  
 




Michael
Wodrich
Da hierzu offenbar doch Informationsbedarf besteht, sollten wir es jetzt mal stehen lassen.

Kurze Erklärung hierzu:

Wenn man mit Bitmaskierungen arbeitet kann die CPU das schneller abarbeiten als wenn man mit Multiplikation und Division arbeitet. Letztere sind einfach grottenlangsam.

Und speziell zur Frage der Erkennung auf gerade und ungerade: Wenn das letzte Bit einer Zahl gesetzt ist, dann ist sie ungerade. Das ist wirklich die schnellste Methode der Erkennung.

In Assembler würde ich z.B. einfach das unterste Bit der Zahl ins Carry-Flag schieben und damit dann einen bedingten Sprung JC/JNC auslösen.

Schöne Grüße
Michael Wodrich
 
Programmieren, das spannendste Detektivspiel der Welt.
18.11.2005  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

6.036 Views

Untitledvor 0 min.
Peter Max Müller15.11.2017
Michael W.23.12.2016
Julian Schmidt07.10.2011
Torsten Boo05.03.2011

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie