Zitat von
R2009:
Was ich sehr interessant finde ist, dass sich die Ausführungszeit verändert wenn man die Eiungangsbedingungen ändert.
Nun ja, ist nicht anders zu erwarten, denn der Ausführungspfad ändert sich auch (es kommen z.B. weitere Prüfungen hintu).
Immerhin sieht man, das man eben doch ab und zu mit Assembler noch etwas herausholen kann. In vergangenen Challenges (Textsuche, Arrays, Strings etc.) war das nicht bzw. nur marginal möglich. Hier (bei Berechnungen) kann man aber einen Compiler u.U. noch optimieren...
Ach, eine kleine Kritik (die aber nichts am Ergebnis ändert): Du vergleichst Äpfel mit Birnen, da die Funktionsresultate unterschiedlichen Datentyps sind.
Weiterhin ist der Aufruf der 'Sign'-Funktion in Version #2 +überflüssig, denn man prüft eh auf '<0' und '>0'.