Programowanie funkcyjne/Strumienie/Ćwiczenia
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Ćcwiczenia
Zdefiniuj strumienie i narysuj schematy odpowiadające tym definicjom:
- Zdefiniuj procedurę for_each, która wykonuje zadaną procedurę na kolejnych elementach strumienia.
- Zdefiniuj procedurę print_int_stream wypisującą elementy strumienia liczb całkowitych.
- Użyj do tego celu procedury for_each z poprzedniego zadania.
- strumień silni,
- przeplot elementów dwóch strumieni (można sprytnie, zamieniając w wywołaniu rekurencyjnym miejscami argumenty),
- strumień wszystkich par (uporządkowanych) elementów z dwóch danych strumieni (w dowolnej kolejności),
- strumień liczb całkowitych, które w rozkładzie na liczby pierwsze mają tylko 2, 3 i 5 [R.Hamming],
- Zdefiniuj w sposób uwikłany strumień, którego -ty wyraz jest równy .
- Zdefiniuj w sposób uwikłany strumień złożony z tych dodatnich liczb całkowitych, które w rozkładzie na czynniki pierwsze mają tylko liczby 2 i 3, oraz rozkładają się na nieparzystą liczbę czynników pierwszych.
- Dany jest nieskończony strumień liczb . Jego strumień różnicowy, to strumień postaci: . Strumień różnicowy drugiego rzędu, to strumień różnicowy strumienia różnicowego. Ogólniej, strumień różnicowy -tego rzędu polega na -krotnym wzięciu strumienia różnicowego, zaczynając od . Zdefiniuj, w sposób uwikłany, strumień złożony z pierwszych elementów strumieni różnicowych kolejnych rzędów
. Narysuj diagram ilustrujący rozwiązanie.
- szereg potęgowy możemy reprezentować jako strumień jego kolejnych współczynników; przy takiej implementacji szeregów potęgowych zaimplementuj:
- pochodną,
- całkę,
- interpolacje wybranych funkcji (np.: , , , ),
- mnożenie szeregów potęgowych,
- Niech będzie szeregiem potęgowym o pierwszym współczynniku równym 1; oblicz odwrotność , tzn. taki szereg , że ; niech , wówczas:
- Korzystając z wyników poprzedniego zadania zaimplementuj dzielenie szeregów potęgowych.