Gepostet: |
foldl funktion in haskell? | ||||||||||
Hallo ich bin ein Haskell- und Programmierungsanfänger und hoffe jemand kann mir helfen? Ich möchte eine Funktion schreiben die für eine Liste von Zahlen prüft, ob eine Zahl dabei ist die grö0ßer als 30 ist. Dies möchte ich mit hilfe "foldle" machen. Ich versetehe was foldle macht, es addiert die elemente in der lieste von links nach rechts. Z.B foldl (+) 0 [1,2,3] Aber ich kreige die Funktion nicht hin, soweit bin ich bisher: test x y z // x y z sollen die elemente sein die in die liste hizugefügt werden Leider komme ich nicht weiter, kann mir jemand helfen? |
|||||||||||
Zum Seitenanfang | |||||||||||
Gepostet: |
|||||||||||
Hallo antonm, eine Möglichkeit ist diese hier: anyGreater30 lst = foldl (\b x -> b || x>30) False lst Es gibt aber auch die Funktion "any" im Prelude, die für deinen Zweck besser geeignet ist. Damit kannst du einfach schreiben "anyGreater30 = any (>30)" und erhältst die gleiche Funktion wie oben. Viele Grüße, Siracusa |
|||||||||||
Zum Seitenanfang | |||||||||||