Gepostet: |
Pythagoras_Zahlen | ||||||||||
Hallo, diese Funktion bei der Eingabe von drei ganzen Zahlen entscheiden soll, ob es sich um Pythagoras_Zahlen handelt. Hugs gibt diesen Fehler raus : \"Instance of Floating Int required for definition of pythagoras\"
|
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Das ist etwas komplizierter, wenn du Real- und Ganzzahlen mischst. Insbesondere die Monomorphismus-Restriktion ist hässlich. fromIntegral hilft bei solchem Code oft weiter. Aber warum machst du es so kompliziert? Es muss doch nur a² + b² = c² gelten. Selbst wenn die Zahlen in beliebiger Reihenfolge kommen können, läuft es bloss hinaus auf
|
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Es war echt dumm von mir so eine komplizierte Formel zu verwenden, wenn es doch einfacher geht. Danke schön | |||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Man könnte noch versuchen, Code-Duplikation zu vermeiden:
Statt einzelner Argument könnte man dann eine Liste nehmen, die sich leicht \"rotieren\" lässt (die Variante hier ist nur für kurze Listen geeignet):
Die rot-Funktion kann über Applicative noch vereinfacht werden (ein nützlicher Trick, wenn man das letzte Argument mehrfach verwenden will):
|
|||||||||||
Zum Seitenanfang | |||||||||||