Wstęp do Programowania potok funkcyjny

Podobne dokumenty
Wstęp do Programowania potok funkcyjny

Wstęp do programowania (potok funkcyjny)

Wstęp do programowania (potok funkcyjny)

Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Al Chwarizmi i trzy algorytmy Euklidesa

Algorytmy i schematy blokowe

MATEMATYKA. WYMAGANIA EDUKACYJNE KLASA I, II, III Bożena Tarnowiecka, Arkadiusz Wolski. KLASA I Wymagania

Wykład IV Algorytmy metody prezentacji i zapisu Rzut oka na język PASCAL

Algorytm Euklidesa. Największy wspólny dzielnik dla danych dwóch liczb całkowitych to największa liczba naturalna dzieląca każdą z nich bez reszty.

PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI

Wykład I Cyfrowa reprezentacja informacji Algorytmy metody prezentacji i zapisu

Algorytm. a programowanie -

Algorytmy w teorii liczb

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 7 Algorytmy

Końcoworoczne kryteria oceniania dla klasy II z matematyki przygotowały mgr Magdalena Murawska i mgr Iwona Śliczner

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

Ułamki i działania 20 h

KRYTERIA OCENY Z MATEMATYKI W KLASIE I GIMNAZJUM

Wymagania edukacyjne niezbędne do uzyskania poszczególnych śródrocznych ocen klasyfikacyjnych z matematyki klasa 2 (oddział gimnazjalny)

Algorytmy, reprezentacja algorytmów.

Jak Arabowie rozwiązywali równania?

Katalog wymagań programowych na poszczególne stopnie szkolne

Algorytm. Krótka historia algorytmów

Katalog wymagań programowych na poszczególne stopnie szkolne

Metody numeryczne w przykładach

PRZYKŁADOWY ARKUSZ EGZAMINACYJNY Z MATEMATYKI

Przedmiotowy system oceniania Wymagania na poszczególne oceny,,liczy się matematyka

Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Podstawowe pojęcia algorytmiki

Wymagania na egzamin poprawkowy z matematyki w roku szkolnym 2018/2019 klasy 2 a BS i 2 b BS

Matematyka z kluczem. Układ treści w klasach 4 8 szkoły podstawowej. KLASA 4 (126 h) część 1 (59 h) część 2 (67 h)

Wymagania edukacyjne na poszczególne stopnie szkolne klasa III

Matematyka z kluczem. Układ treści w klasach 4 8 szkoły podstawowej. KLASA 4 (126 h) część 1 (59 h) część 2 (67 h)

Wstęp do Informatyki dla bioinformatyków

INFORMATYKA W SZKOLE. Podyplomowe Studia Pedagogiczne. Dr inż. Grażyna KRUPIŃSKA. D-10 pokój 227

Wstęp do programowania (potok funkcyjny)

Wymagania edukacyjne z matematyki dla kl. 2 Gimnazjum Publicznego im. Jana Pawła II w Żarnowcu w roku szkolnym 2016/2017

Wykłady z dydaktyki matematyki (klasy IV-VIII) III rok matematyki semestr zimowy 2017/2018 ćwiczenia i wykład nr 6

Wstęp do programowania INP001213Wcl rok akademicki 2017/18 semestr zimowy. Wykład 1. Karol Tarnowski A-1 p.

ZADANIA ZAMKNIETE W zadaniach 1-25 wybierz i zaznacz na karcie odpowiedzi poprawna

Wymagania edukacyjne z matematyki na poszczególne śródroczne oceny klasyfikacyjne dla klasy IV w roku 2019/2020.

Definicje. Algorytm to:

GSP077 Pakiet. KArty pracy. MateMatyka. Ekstraklasa 6klasisty matematyka kpracy 6 pak 1.indd 1

Informatyk i matematyk: dwa spojrzenia na jedno zadanie (studium przypadku) Krzysztof Ciebiera, Krzysztof Diks, Paweł Strzelecki

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA POSZCZEGÓLNYCH OCEN Z MATEMATYKI W KLASIE VI

Indukcja matematyczna

Wymagania programowe na poszczególne oceny. Klasa 2. Potęgi o wykładnikach naturalnych i całkowitych. Poziom wymagań edukacyjnych:

Kryteria ocen z matematyki w klasie IV

EGZAMIN MATURALNY Z INFORMATYKI MAJ 2014 POZIOM ROZSZERZONY CZĘŚĆ I WYBRANE: Czas pracy: 90 minut. Liczba punktów do uzyskania: 20 WPISUJE ZDAJĄCY

WYMAGANIE EDUKACYJNE Z MATEMATYKI W KLASIE II GIMNAZJUM. dopuszczającą dostateczną dobrą bardzo dobrą celującą

Program edukacyjny wspierający nauczanie matematyki w klasach III - VII

Skrypt 23. Przygotowanie do egzaminu Pierwiastki

JĘZYKI PROGRAMOWANIA Z PROGRAMOWANIEM OBIEKTOWYM. Wykład 1

1 Wprowadzenie do algorytmiki

Liczby zespolone. Katarzyna Grabowska. Uniwersytet Warszawski, Wydział Fizyki, Katedra Metod Matematycznych Fizyki. Letnia Szkoła Fizyki, Płock 2008

1. Równania i nierówności liniowe

Wykład I Cyfrowa reprezentacja informacji Algorytmy metody prezentacji i zapisu Tablice (wstęp) Rzut okiem na języki programowania

KONKURS MATEMATYCZNY

Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

wymagania programowe z matematyki kl. III gimnazjum

Kod przedmiotu: 05.1-WP-PED-PNM Typ przedmiotu: specjalnościowy

WHILE (wyrażenie) instrukcja;

WYMAGANIA EDUKACYJNE W KLASIE DRUGIEJ Z MATEMATYKI GIMNAZJUM NR 19 W KRAKOWIE

Matematyka Wymagania edukacyjne dla uczniów klas VIII Rok szkolny 2018/2019. Dział Ocena Umiejętności Potęgi i pierwiastki. Na ocenę dopuszczającą

MATEMATYKA. klasa VII. Podstawa programowa przedmiotu SZKOŁY BENEDYKTA

Wykorzystanie programów komputerowych do obliczeń matematycznych, cz. 2/2

Zagadnienia wybrane nauczania matematyki Kod przedmiotu

Kształcenie w zakresie podstawowym. Klasa 1

Rozkład materiału/ Matematyka/ klasy 4-6 Agnieszka Wojtas Kornelówka 2009/2010

Osiągnięcia ponadprzedmiotowe

WHILE (wyrażenie) instrukcja;

ZBIÓR ZADAŃ Z MATEMATYKI DLA KLASY II GIMNAZJUM W ZAKRESIE WYMAGAŃ KONIECZNYCH I PODSTAWOWYCH

Program nauczania informatyki w gimnazjum Informatyka dla Ciebie. Modyfikacja programu klasy w cyklu 2 godzinnym

Algorytm. Algorytmy Marek Pudełko

I semestr WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VI. Wymagania na ocenę dopuszczającą. Dział programu: Liczby naturalne

KRYTERIA OCENY Z MATEMATYKI W KLASIE I GIMNAZJUM. Arytmetyka

Matematyka Matematyka z pomysłem Klasy 4 6

PRÓBNY EGZAMIN MATURALNY Z MATEMATYKI

Modelowanie wybranych pojęć matematycznych. semestr letni, 2016/2017 Wykład 10 Własności funkcji cd.

STANDARDY WYMAGAŃ W ZAKRESIE WIEDZY MATEMATYCZNEJ UCZNIA KLASY V W ROZBICIU NA OCENY

WYMAGANIA EDUKACYJNE NA POSZCZEGÓLNE OCENY Z MATEMATYKI DLA UCZNIÓW KLAS IV-VI

WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE V

LUBELSKA PRÓBA PRZED MATURĄ MATEMATYKA - poziom rozszerzony

Kryteria ocen z matematyki w Gimnazjum. Klasa I. Liczby i działania

ZESPÓŁ SZKÓŁ W OBRZYCKU

wymagania programowe z matematyki kl. II gimnazjum

WYMAGANIA EDUKACYJNE Z MATEMATYKI W KLASIE II W PUBLICZNYM GIMNAZJUM NR 2 W ZESPOLE SZKÓŁ W RUDKACH

KRYTERIUM OCENY Z MATEMATYKI DLA KLASY 6

Zadania przygotowawcze do konkursu o tytuł NAJLEPSZEGO MATEMATYKA KLAS PIERWSZYCH I DRUGICH POWIATU BOCHEŃSKIEGO rok szk. 2017/2018.

Wymagania edukacyjne matematyka klasa 1 zakres podstawowy 1. LICZBY RZECZYWISTE

Kryteria oceniania na poszczególne stopnie z matematyki - klasa VI

ROZKŁAD MATERIAŁU Z MATEMATYKI DLA KLASY IV SP NA PODSTAWIE PROGRAMU DKW /99 Liczę z Pitagorasem

Przedmiotowe zasady oceniania i wymagania edukacyjne z matematyki dla klasy drugiej gimnazjum

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

Podstawy Informatyki. Programowanie. Inżynieria Ciepła, I rok. Co to jest algorytm? Istotne cechy algorytmu

Wymagania edukacyjne z matematyki : Matematyka z plusem GWO

KONSPEKT FUNKCJE cz. 1.

Program przedmiotowo- wychowawczy z matematyki w kl.v

Algorytm. Słowo algorytm pochodzi od perskiego matematyka Mohammed ibn Musa al-kowarizimi (Algorismus - łacina) z IX w. ne.

Przedmiotowy system oceniania z matematyki klasa I i II ZSZ 2013/2014

MATEMATYKA WYMAGANIA EDUKACYJNE DLA KLASY IV

Dr Maciej Grzesiak, Instytut Matematyki

Transkrypt:

do Programowania potok funkcyjny Marcin Kubica kubica@mimuw.edu.pl 2018/2019

Outline 1

Czym jest magia? Czym jest programowanie? Zobaczymy, że jest ono dziedziną magii! Ale czym jest magia? Definition (Wikipedia en/pl) Magia wykorzystanie rytuałów, symboli, [... ] języka i zaklęć, w celu wykorzystania nadnaturalnych sił do kształtowania rzeczywistości.

Czym jest magia? Czym jest programowanie? Zobaczymy, że jest ono dziedziną magii! Ale czym jest magia? Definition (Wikipedia en/pl) Magia wykorzystanie rytuałów, symboli, [... ] języka i zaklęć, w celu wykorzystania nadnaturalnych sił do kształtowania rzeczywistości.

Czym jest magia? c.d. Definition (Wikipedia en/pl) Typowe cechy praktyk magicznych: Rytuały (np. logowanie, oddawanie programów zaliczeniowych), wykonywane z użyciem specjalnych obiektów (np. indeks), w określonym miejscu i czasie (np. godziny otwarcia dziekanatu). Osoba, przedmioty i miejsce wykonywania rytuału mogą wymagać zachowania czystości (np. zakaz jedzenia w laboratorium). Magiczne symbole (np. T (n) = Θ(n log n)). Język magiczny, zwykle archaiczny i cokolwiek dziwaczny. Ocaml!

Czym jest magia? c.d. Definition (Wikipedia en/pl) Typowe cechy praktyk magicznych: Rytuały (np. logowanie, oddawanie programów zaliczeniowych), wykonywane z użyciem specjalnych obiektów (np. indeks), w określonym miejscu i czasie (np. godziny otwarcia dziekanatu). Osoba, przedmioty i miejsce wykonywania rytuału mogą wymagać zachowania czystości (np. zakaz jedzenia w laboratorium). Magiczne symbole (np. T (n) = Θ(n log n)). Język magiczny, zwykle archaiczny i cokolwiek dziwaczny. Ocaml!

Czym jest magia? c.d. Definition (Wikipedia en/pl) Typowe cechy praktyk magicznych: Rytuały (np. logowanie, oddawanie programów zaliczeniowych), wykonywane z użyciem specjalnych obiektów (np. indeks), w określonym miejscu i czasie (np. godziny otwarcia dziekanatu). Osoba, przedmioty i miejsce wykonywania rytuału mogą wymagać zachowania czystości (np. zakaz jedzenia w laboratorium). Magiczne symbole (np. T (n) = Θ(n log n)). Język magiczny, zwykle archaiczny i cokolwiek dziwaczny. Ocaml!

Czym jest magia? c.d. Definition (Wikipedia en/pl) Typowe cechy praktyk magicznych: Rytuały (np. logowanie, oddawanie programów zaliczeniowych), wykonywane z użyciem specjalnych obiektów (np. indeks), w określonym miejscu i czasie (np. godziny otwarcia dziekanatu). Osoba, przedmioty i miejsce wykonywania rytuału mogą wymagać zachowania czystości (np. zakaz jedzenia w laboratorium). Magiczne symbole (np. T (n) = Θ(n log n)). Język magiczny, zwykle archaiczny i cokolwiek dziwaczny. Ocaml!

Programy jako zaklęcia magiczne Programy to zaklęcia zapisane w specjalnym języku (tzw. języku programowania) Programy działają na procesy obliczeniowe. Procesy obliczeniowe to rodzaj duchów mieszkających w komputerach. Czy na pewno? A czym są duchy?

Procesy obliczeniowe jako duchy Definition (Duchy) Charakterystyka duchów: Niematerialne. Potencjał intelektualny. Zdolność do komunikowania się ze światem realnym. Moc sprawcza. Procesy obliczeniowe posiadają wszystkie te cechy!

Kilka podstawowych pojęć Program zaklęcie zapisane w języku programowania. Programowanie formułowanie programu mającego osiągnąć zamierzony cel. Weryfikacja sprawdzenie, że program osiąga zamierzony cel. Testowanie szukanie kontr-przykładu, że program nie osiąga zamierzonego celu. Algorytm sposób działania procesu obliczeniowego wyrażony przez program. program = algorytm + język programowania

Muhammad Ibn Mūsā al-khwārizmi (ok. 780 850 r. n.e.) Perski matematyk, geograf i astronom działający w Domu Mądrości za czasów kalifa Al-Ma mūna. Przyczynił się do upowszechnienia zapisu pozycyjnego i cyfr arabskich. Autor m.in. Zasad redukcji i przenoszenia (Kitāb al-jabr wa l-muqābala), od której pochodzi słowo algebra. Od jego nazwiska pochodzi słowo algorytm (al-khwārizmi, Al-Chuwarizmi, Alchwarizmi, Algorithmi, Algorithmus).

Metody rozwiązywania równań kwadratowych Liczby utożsamiamy tu z długościami odcinków. Mnożenie odpowiada powierzchni prostokątów. W tych czasach pojęcie liczb ujemnych i zera nie było jeszcze znane. a b c równanie przykład metoda + + + ax 2 + bx + c = 0 + + 0 ax 2 + bx = 0 + + ax 2 + bx = c x 2 + 10x = 39 metoda 1 + 0 + ax 2 + c = 0 + 0 0 ax 2 = 0 + 0 ax 2 = c 5x 2 = 80 metoda 2 + + ax 2 + c = bx x 2 + 21 = 10x metoda 3 + 0 ax 2 = bx x 2 = 5x metoda 4 + ax 2 = bx + c x 2 = 3x + 4 metoda 5

Metody rozwiązywania równań kwadratowych Liczby utożsamiamy tu z długościami odcinków. Mnożenie odpowiada powierzchni prostokątów. W tych czasach pojęcie liczb ujemnych i zera nie było jeszcze znane. a b c równanie przykład metoda + + + ax 2 + bx + c = 0 + + 0 ax 2 + bx = 0 + + ax 2 + bx = c x 2 + 10x = 39 metoda 1 + 0 + ax 2 + c = 0 + 0 0 ax 2 = 0 + 0 ax 2 = c 5x 2 = 80 metoda 2 + + ax 2 + c = bx x 2 + 21 = 10x metoda 3 + 0 ax 2 = bx x 2 = 5x metoda 4 + ax 2 = bx + c x 2 = 3x + 4 metoda 5

Metoda 1 Example (x 2 + 10x = 39) x x x x x x 2 25 x x x x x Pole dużego kwadratu wynosi 39 + 25 = 64 = 8 8. Stąd x + 5 = 8, czyli x = 3.

Zdziwienie dnia Zdziwienie dnia W metodzie rozwiązywania równań kwadratowych Al-Chwarizmiego wykorzystywane jest pierwiastkowanie. Równocześnie liczby są utożsamiane z długościami odcinków lub powierzchniami figur. Jak wyznaczyć pierwiastek z długości odcinka używając cyrkla, linijki i odcinka jednostkowego?

Metoda 2 Example (5x 2 = 80) 4 x 16 4 x 5x 2 = 80, stąd x 2 = 80 5 = 16, czyli x = 4.

Metoda 3 Example (x 2 + 21 = 10x) x 5 2 4 25 2 5 x Z kwadratu x x wycinamy dwa prostokąty 5 x. Pokrywają się one w kwadracie 5 5. Mały kwadracik ma powierzchnię x 2 10x + 25 = x 2 10x + 21 + 4 = 4 = 2 2. x = 5 + 2 = 7.

Metoda 4 Example (x 2 = 5x) Równanie ax 2 = bx ma dwa rozwiązania: x = 0, x = b a Dla x 2 = 5x mamy x = 0 lub x = 5.

Metoda 5 Example (x 2 = 3x + 4) x 1.5 2.25 2.5 6.25 x 2.5 1.5 Z kwadratu x x wycinamy dwa prostokąty 1.5 x Pokrywają się one w kwadracie 1.5 1.5. Mały kwadracik ma powierzchnię x 2 3x + 1.5 1.5 = 4 + 2.25 = 6.25 = 2.5 2. Stąd x = 1.5 + 2.5 = 4.

Euklides Euklides (Eύκλεíδησ) grecki filozof i matematyk, przełom IV i III w p.n.e., Aleksandria. Elementy kompendium wiedzy matematycznej, geometria, ale nie tylko. Algorytm Euklidesa najstarszy (chyba) znany algorytm, największy wspólny dzielnik dwóch liczb.

Euklides Euklides (Eύκλεíδησ) grecki filozof i matematyk, przełom IV i III w p.n.e., Aleksandria. Elementy kompendium wiedzy matematycznej, geometria, ale nie tylko. Algorytm Euklidesa najstarszy (chyba) znany algorytm, największy wspólny dzielnik dwóch liczb.

Euklides Euklides (Eύκλεíδησ) grecki filozof i matematyk, przełom IV i III w p.n.e., Aleksandria. Elementy kompendium wiedzy matematycznej, geometria, ale nie tylko. Algorytm Euklidesa najstarszy (chyba) znany algorytm, największy wspólny dzielnik dwóch liczb.

Algorytm Euklidesa Wersja z odejmowaniem, NWD(x, y) = NWD(x y, y). Algorytm 1 Dopóki x y powtarzaj następujący krok: 2 Od większej z liczb x i y odejmij mniejszą. 3 Wynik to x = y = NWD(x, y).

Algorytm Euklidesa Wersja z odejmowaniem, NWD(x, y) = NWD(x y, y). Algorytm 1 Dopóki x y powtarzaj następujący krok: 2 Od większej z liczb x i y odejmij mniejszą. 3 Wynik to x = y = NWD(x, y).

Archimedes Archimedes (Áρχıµήδησ, ok. 287 212 p.n.e.) wszechstronny grecki filozof, Syrakuzy. Opracował algorytm przybliżania liczby π. Okrąg jednostkowy z opisanym i wpisanym n-kątem foremnym. Proste oszacowanie dla sześciokąta: 3 < π < 2 3

Archimedes Archimedes (Áρχıµήδησ, ok. 287 212 p.n.e.) wszechstronny grecki filozof, Syrakuzy. Opracował algorytm przybliżania liczby π. Okrąg jednostkowy z opisanym i wpisanym n-kątem foremnym. Proste oszacowanie dla sześciokąta: 3 < π < 2 3

Archimedes Archimedes (Áρχıµήδησ, ok. 287 212 p.n.e.) wszechstronny grecki filozof, Syrakuzy. Opracował algorytm przybliżania liczby π. Okrąg jednostkowy z opisanym i wpisanym n-kątem foremnym. Proste oszacowanie dla sześciokąta: 3 < π < 2 3

Archimedes Archimedes (Áρχıµήδησ, ok. 287 212 p.n.e.) wszechstronny grecki filozof, Syrakuzy. Opracował algorytm przybliżania liczby π. Okrąg jednostkowy z opisanym i wpisanym n-kątem foremnym. Proste oszacowanie dla sześciokąta: 3 < π < 2 3

Algorytm Archimedesa 1 y x/2 X x X X i x boki n-kątów foremnych X i x boki 2n-kątów foremnych Oznaczmy: y = 1 x2 4 X = x y = 2x 4 x 2 1 X/2

Algorytm Archimedesa, c.d. y = 1 x 2 4 x 2 X = 2x 4 x 2 1 1 y x/2 X x X X/2 x = = = = 4 + (1 y)2 = x 2 4 + 1 + y 2 2y = x 2 4 + 1 + 1 x 2 4 2 1 x 2 4 = 2 4 x 2 = 2 2x X

Algorytm Archimedesa, c.d. 1 1 y x/2 X x X X/2 x = X = = = 2 2 2x X 2x = 4 x 2 2 2 2x X 4 2 + 2x 2 2x X 2 + 2x X X = X x = 2 X + x

Algorytm Archimedesa, c.d. Otrzymaliśmy następujące zależności: x = 2 2x X X X x = 2 X +x Kolejne kroki algorytmu Archimedesa: n x X π > π < 6 1.0000000 1.1547005 3.0000000 3.4641016 12 0.5176380 0.5358983 3.1058285 3.2153903 24 0.2610523 0.2633049 3.1326286 3.1596599 48 0.1308062 0.1310869 3.1393502 3.1460862 96 0.0654381 0.0654732 3.1410319 3.1427145

Algorytm Archimedesa, c.d. Otrzymaliśmy następujące zależności: x = 2 2x X X X x = 2 X +x Kolejne kroki algorytmu Archimedesa: n x X π > π < 6 1.0000000 1.1547005 3.0000000 3.4641016 12 0.5176380 0.5358983 3.1058285 3.2153903 24 0.2610523 0.2633049 3.1326286 3.1596599 48 0.1308062 0.1310869 3.1393502 3.1460862 96 0.0654381 0.0654732 3.1410319 3.1427145

Programowanie było znane od dawna, choć nie wiedziano jeszcze, że jest to programowanie. Example Przepisy kulinarne zamówienie specyfikacja, przepis program, gotowanie wykonanie, potrawa efekt, smakuje? testowanie, weryfikacja?

muzyka 4 7 3 Example Zapis nutowy: nuty program, katarynka, pianola komputer przenośny, serwer, taśma dziurkowana skompilowany program, muzyka efekt działania katarynki, pianoli, czy orkiestry,

MetaFont W P F Example Opisy skalowalnych czcionek (np. MetaFont): opis czcionek program, wygląd czcionek przy zadanej rozdzielczości, parametrach i dla zadanego urządzenia wykonanie, wygląd czcionek efekt.

systemy składu tekstu Example Systemy składu tekstu (np. L A TEX, MS Word, Open Office) zawierają mechanizm makrodefinicji: tekst + makrodefinicje program, skład tekstu wykonanie, wydruk efekt działania.

L A TEX Example Definicja tabelki, która sama się wypełnia liczbami Fibonacciego. i 1 2 3 4 5 6 7 8 9 10 11 12 Fib i 1 1 2 3 5 8 13 21 34 55 89 144 \newcounter{i} \newcounter{a} \newcounter{b} \newcounter{c} \newcommand{\fibtab}[1]{ \def\heads{ l } \def\inds{i} \def\wyniki{fib i } \setcounter{i}{0} \setcounter{a}{0} \setcounter{b}{1} \@whilenum\value{i}<#1\do { \addtocounter{i}{1} \edef\heads{\heads l } \edef\inds{\inds & \thei} \edef\wyniki{\wyniki & \theb} \setcounter{c}{\value{a}} \addtocounter{c}{\value{b}} \setcounter{a}{\value{b}} \setcounter{b}{\value{c}} } \begin{tabular}{\heads} \hline \inds \\ \hline \wyniki \\ \hline \end{tabular} } \fibtab{12}

Dziedzina algorytmiczna Definition Dziedzina algorytmiczna, to zestaw elementarnych pojęć, których możemy używać opisując algorytmy: zbiory wartości, funkcje i stałe, relacje. Dziedzina algorytmiczna jest wbudowana w język programowania. Możemy jednak mówić o niej niezależnie od języka programowania.

Dziedzina algorytmiczna, c.d. Example Dziedzina algorytmiczna al-khwārizmiego: R +, 1, +,,, /,, <, =. Jeśli mamy zbiór wartości logicznych { prawda, fałsz }, to relacje możemy utożsamić z funkcjami w zbiór wartości logicznych.

Zasady zaliczenia Kolokwia Programy zaliczeniowe Zwolnienia z egzaminu

Materiały Skrypt http://www.mimuw.edu.pl/~kubica/wpf/ Moodle https://moodle.mimuw.edu.pl/ Slajdy http://smurf.mimuw.edu.pl/drupal6/?q=wstep_do_programowania_funkcyjny Literatura: Y. Minsky, A. Madhavapeddy, J. Hickey, Real World OCaml, O Reilly 2014. J. Tomasiewicz, Zaprzyjaźnij się z algorytmami, PWN 2017. A. Hunt, D. Thomas, Pragmatyczny programista, WNT 2009. H. Abelson, G. J. Sussman, Struktura i interpretacja programów komputerowych, WNT 2002.

Deser http://xkcd.com/224/