Programowanie funkcyjne/Procedury wyższych rzędów i listy/Ćwiczenia

Z Studia Informatyczne
< Programowanie funkcyjne‎ | Procedury wyższych rzędów i listy
Wersja z dnia 13:27, 22 sie 2006 autorstwa Kubica (dyskusja | edycje)
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacjiPrzejdź do wyszukiwania

Ćwiczenia

Ćwiczenia na listy i procedury wyższych rzędów:

  • Zapisz procedurę length za pomocą foldr.
  • Zapisz procedurę append za pomocą foldr/foldl.
  • Za pomocą foldl zapisz procedurę rev.
  • suma listy funkcji,
  • złożenie listy funkcji,
  • Za pomocą map zapisz procedurę heads, której wynikiem dla danej listy list, jest lista pierwszych elementów list składowych.
  • Za pomocą filter zaimplementuj procedurę not_divisivble, która pozostawia na liście wszystkie elementy niepodzielne przez zadaną liczbę.
  • Wykorzystaj rozwiązanie poprzedniego zadania do zaimplementowania sita Eratostenesa.
  • Za pomocą foldr zapisz flatten. (let flatten l = foldr (@) l [];;)
  • Za pomocą foldl zapisz procedurę foldr.