Lisp 7-1. opakování destruktivních změn seznamů
|
|
- Luděk Matyáš Tábor
- před 9 lety
- Počet zobrazení:
Transkript
1 Lisp 7-1 opakování destruktivních změn seznamů Seznam bez posledního prvku - destruktivně: ;velmi důležité si uvědomit jak to funguje.. zejména návratová hodnota funkce (defun bez_posledniho(s ((null (cdr s nil ((null (cdr (cdr s (rplacd s nil s (t (bez_posledniho (cdr s s (bez_posledniho s s -> (a b c Přidá prvek na konec seznamu: (defun pridat_na_konec(a s (rplacd (last s (cons a nil s (pridat_na_konec 'e s -> (a b c d e s -> (a b c d e ;návratová hodnota funkce Rotace seznamu doleva: (defun rotace_doleva(s (t (pridat_na_konec (car s s ;změna seznamu (cdr s ;návratová hodnota funkce (rotace_doleva s -> (b c d a s -> (a b c d a (defun rotace_doleva2(s (t (pridat_na_konec (car s s ;1. změna seznamu (rplaca s (cadr s ;2. změna seznamu (rplacd s (cddr s ;3. změna seznamu s ;návratová hodnota (rotace_doleva2 s -> (b c d a s -> (b c d a
2 Lisp 7-2 Rotace seznamu doprava: (defun rotace_doprava(s (t (let ((posledni (last s (bez_posledniho (bez_posledniho s (cons (car posledni bez_posledniho (rotace_doprava s -> (d a b c s -> (a b c (defun rotace_doprava2(s (t (let ((posledni (last s (bez_posledniho s (let ((nova_bunka (cons (car s (cdr s (rplaca s (car posledni (rplacd s nova_bunka s (rotace_doprava2 s -> (d a b c s -> (d a b c Vložení prvku do seznamu na danou pozici: (defun insert(prvek index seznam (cond ((zerop index (let ((nova_bunka (cons (car seznam (cdr seznam (rplaca seznam prvek (rplacd seznam nova_bunka ((eql index 1 (let ((nova_bunka (cons prvek (cdr seznam (rplacd seznam nova_bunka ((null seznam nil (t (insert prvek (- index 1 (cdr seznam (insert 'e 2 s s -> (a b e c d (insert 'e 4 s s -> (a b c d e (insert 'e 0 s s -> (e a b c d
3 Lisp 7-3 Obrácení pořadí prvků v seznamu - destruktivně uvnitř: (defun obrat(s (obrat2 s nil Obrácení pořadí prvků v seznamu - destruktivně i navenek: (defun obrat_seznam(s (let ((obraceny (obrat2 (cons (car s (cdr s nil (rplaca s (car obraceny (rplacd s (cdr obraceny (defun obrat2(zdroj druhy (cond ((null zdroj druhy (t (let ((zbytek (cdr zdroj (rplacd zdroj druhy (obrat2 zbytek zdroj (obrat s -> (d c b a s -> a (obrat_seznam s -> (d c b a s -> (d c b a Substituce: a 1.výskytu v jednoúrovňovém (lineárním seznamu b vech výskytů v jednoúrovňovém (lineárním seznamu c vech výskytů ve víceúrovňovém seznamu d 1.výskytu ve víceúrovňovém seznamu (defun substituce1(a b s ((equal a (car s (rplaca s b (t (substituce1 a b (cdr s (setq s '((a b a (c (d a a (substituce1 'a 'b s -> (b (c (d a a ;na návratovou hodnotu jsme nijak nehráli s -> ((a b b (c (d a a (defun substituce2(a b s ((equal a (car s (rplaca s b (substituce2 a b (cdr s (t (substituce2 a b (cdr s (setq s '((a b a (c (d a a (substituce2 'a 'b s -> nil ;na návratovou hodnotu jsme nijak nehráli s -> ((a b b (c (d a b
4 Lisp 7-4 (defun substituce3(a b s ((equal a (car s (rplaca s b (substituce3 a b (cdr s ((listp (car s (substituce3 a b (car s (substituce3 a b (cdr s (t (substituce3 a b (cdr s (setq s '((a b a (c (d a a (substituce3 'a 'b s -> nil s -> ((b b b (c (d b b (defun substituce4 (a b s (declare (special first (setq first t (substituce4_1 'first a b s (defun substituce4_1 (first a b s ((and (equal a (car s (eval first (set first nil (rplaca s b (substituce4_1 first a b (cdr s ((listp (car s (substituce4_1 first a b (car s (substituce4_1 first a b (cdr s (t (substituce4_1 first a b (cdr s (setq s '((a b a (c (d a a (substituce4 'a 'b s -> nil s -> ((b b a (c (d a a Odstranit: a 1.výskyt v jednoúrovňovém (lineárním seznamu b vechny výskyty v jednoúrovňovém (lineárním seznamu c vechny výskyty ve víceúrovňovém seznamu d 1.výskyt ve víceúrovňovém seznamu (defun odstranit1(a s ((and (equal a (car s (null (cdr s nil ((equal a (car s (let ((nova_bunka (cons (cadr s (cddr s (rplaca s (car nova_bunka (rplacd s (cdr nova_bunka s ((equal a (cadr s (rplacd s (cddr s s (t (odstranit1 a (cdr s s
5 Lisp 7-5 (setq s '(a (a b a (c (d a a (odstranit1 'a s -> ((a b a (c (d a a s -> ((a b a (c (d a a (setq s '(a (odstranit1 'a s -> nil s -> (a (defun odstranit2(a s ((equal a (car s (odstranit2 a (cdr s ((equal a (cadr s (rplacd s (cddr s (odstranit2 a (cdr s s (t (odstranit2 a (cdr s s (setq s '(a (a b a (c (d a a (odstranit2 'a s -> ((a b (c (d a (defun odstranit2_1(a s ((equal a (car s (odstranit2_1 a (cdr s ((equal a (cadr s (rplacd s (odstranit2_1 a (cddr s s (t (rplacd s (odstranit2_1 a (cdr s s (setq s '(a (a b a (c (d a a (odstranit2_1 'a s -> ((a b (c (d a (defun odstranit3(a s ((listp (car s (rplaca s (odstranit3 a (car s (rplacd s (odstranit3 a (cdr s ((and (equal a (car s (null (cdr s nil ((equal a (car s (rplaca s (cadr s (rplacd s (cddr s (odstranit3 a s s (t (rplacd s (odstranit3 a (cdr s s (defun odstranit3(a s ((equal a (car s (odstranit3 a (cdr s ((listp (car s (rplaca s (odstranit3 a (car s (cond ((equal a (cadr s (rplacd s (odstranit3 a (cddr s s (t (rplacd s (odstranit3 a (cdr s s (t (rplacd s (odstranit3 a (cdr s s
6 Lisp 7-6 (setq s '(a (a b a (c (d a a (odstranit3 'a s -> ((b (c (d (defun odstranit4 (a s (declare (special first (setq first t (odstranit4_1 'first a s (defun odstranit4_1 (first a s ((and (equal a (car s (eval first (set first nil (cdr s ((listp (car s (rplaca s (odstranit4_1 first a (car s (cond ((and (equal a (cadr s (eval first (set first nil (rplacd s (cddr s s (t (rplacd s (odstranit4_1 first a (cdr s (t (rplacd s (odstranit4_1 first a (cdr s s (setq s '((a b a (c (d a a (odstranit4 'a s -> ((b a (c (d a a (setq s '(a (a b a (c (d a a (odstranit4 'a s -> ((a b a (c (d a a (setq s '((b c d (c (d a a (odstranit4 'a s -> ((b c d (c (d a (setq s '(b c a (c (d a a (odstranit4 'a s -> (b c (c (d a a Aplikace nad strukturovanými seznami Seznam rodičů: reprezentace: (jmeno matka otec (defun jmeno(zaznam (car zaznam (defun matka(zaznam (cadr zaznam (defun otec(zaznam (caddr zaznam (defun rodice(zaznam (cdr zaznam (defun vytvor(jmeno matka otec (list jmeno matka otec
7 Lisp 7-7 Vrátí rodiče k danému jménu: (defun najdi_rodice(jm seznam (declare (special jm (mapcan '(lambda(zaznam (cond ((eq jm (jmeno zaznam (rodice zaznam (t nil seznam (setq seznam_rodicu '((jan dana zdenek (dana jirina antonin (milos jirina antonin (petr milos jitka (marek zdenek petra (martina dana michal (najdi_rodice 'petr seznam_rodicu -> (milos jitka Najde všechny babicky: (defun babicky(jm seznam (let ((rod (najdi_rodice jm seznam (cond ((null rod nil (t (mapcan '(lambda (x (cond ((null x nil ((list (car x (list (najdi_rodice (car rod seznam (najdi_rodice (cadr rod seznam (babicky 'jan seznam_rodicu -> (jirina Najde všechny dědečky: (defun dedecci(jm seznam (let ((rod (najdi_rodice jm seznam (cond ((null rod nil (t (append (cdr (najdi_rodice (car rod seznam (cdr (najdi_rodice (cadr rod seznam (dedecci 'jan seznam_rodicu -> (antonin Najde všechny předky: (defun predci(jm seznam (let ((rod (najdi_rodice jm seznam (cond ((null rod nil (t (append rod (predci (car rod seznam (predci (cadr rod seznam ; (predci 'jan seznam_rodicu -> (DANA ZDENEK JIRINA ANTONIN ; (predci 'petr seznam_rodicu -> (MILOS JITKA JIRINA ANTONIN
8 Lisp 7-8 Najde vechny vlastní sourozence: (defun sourozenci(jm seznam (declare (special jm (let ((rod (najdi_rodice jm seznam (declare (special rod (cond ((null rod nil (t (mapcan '(lambda(zaznam (cond ((and (equal rod (rodice zaznam (not (equal jm (jmeno zaznam (list (jmeno zaznam (t nil seznam (sourozenci 'jan seznam_rodicu -> nil (sourozenci 'dana seznam_rodicu -> (milos (sourozenci 'milos seznam_rodicu -> (dana Najde i nevlastní sourozence: (defun sourozenci2(jm seznam (declare (special jm (let ((rod (najdi_rodice jm seznam (declare (special rod (cond ((null rod nil (t (mapcan '(lambda(zaznam (cond ((and (or (member (car rod (rodice zaznam (member (cadr rod (rodice zaznam (not (equal jm (jmeno zaznam (list (jmeno zaznam (t nil seznam (sourozenci 'jan seznam_rodicu -> nil (sourozenci2 'jan seznam_rodicu -> (marek martina (sourozenci2 'dana seznam_rodicu -> (milos (sourozenci2 'milos seznam_rodicu -> (dana Vrátí jméno k daným rodičům: (defun najdi_jmeno(rod seznam (declare (special rod (mapcan '(lambda(zaznam (cond ((equal rod (rodice zaznam (list (jmeno zaznam (t nil seznam
9 Lisp 7-9 Zplošti seznam: (defun zplosti(s ((atom s s ((atom (car s (cons (car s (zplosti (cdr s (t (append (zplosti (car s (zplosti (cdr s (defun zplosti2(s (mapcan '(lambda(a (cond ((atom a (list a (t (zplosti2 a s (zplosti '(a ((b c d (e (f -> (a b c d e f (zplosti2 '(a ((b c d (e (f -> (a b c d e f Vlastnosti symbolických atomů - jméno atomu je pouze jednou z jeho možných vlastností, patří mezi standardní vlastnosti - každému sybolickému atomu můžeme přidat libovolný počet dalších vlastností - reprezentace vlastností - objet pomocí zřetězeného seznamu cons-buněk - seznam vlastnostní seznamu nelze chápat jako obyčejný seznam, neboť je součástí vnitřní reprezentace atomu - vlastnosti tvoří základ pro programy řízené daty a objektové programování v Lispu (put atom vlastnost hodnota.. nastavení hodnoty (get atom vlastnost.. získání hodnoty (remprop atom vlastnost.. zrušení vlastnosti (symbol-plist symbol.. seznam vlastností a jejich hodnot (symbol-plist 'a -> nil (get 'a 'vl1 -> nil (put 'a 'vl1 1 (symbol-plist 'a -> (vl1 1 (put 'a 'vl2 2 (symbol-plist 'a -> (vl2 2 vl1 1 (get 'a 'vl1 -> 1 (remprop 'a 'vl1 -> t (get 'a 'vl1 -> nil (symbol-plist 'a -> (vl2 2
10 Lisp 7-10 Seznam rodičů pomocí vlastností: (put 'jan 'rodice '(dana zdenek (put 'dana 'rodice '(jirina antonin (put 'milos 'rodice '(jirina antonin (put 'petr 'rodice '(milos jitka (put 'marek 'rodice '(zdenek petra (put 'martina 'rodice '(dana michal (defun najdi_rodice(jm (get jm 'rodice (defun predci(jm (let ((rod (najdi_rodice jm (cond ((null rod nil (t (append rod (predci (car rod (predci (cadr rod (predci 'jan -> (DANA ZDENEK JIRINA ANTONIN Asociativní vyhledávání - assoc v seznamu vyhledá podseznam pod car prvku (assoc 'elf '( (a 0 1 (b d x 3 x (elf 23 alfa -> (elf 23 alfa
LISP Definice funkcí
LISP Definice funkcí (DEFUN jméno-fce (argumenty) tělo-fce ) Přiřadí jménu-fce lambda výraz definovaný tělem-fce, tj. (LAMBDA (argumenty) tělo-fce). Vytvoří funkční vazbu symbolu jméno-fce Struktura symbolu:
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 3. CVIČENÍ
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 3. CVIČENÍ 2011 Jan Janoušek MI-FLP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Page 1 of 6 Cviceni 3 Obsah seznamy, cons-buňka, car, cdr, first,
Funkcionální programování úvod
Funkcionální programování úvod Imperativní jazyky založeny na von Neumann architektuře primárním kriteriem je efektivita Modelem je Turingův stroj Základní konstrukcí je příkaz Příkazy mění stavový prostor
Jazyky pro umělou inteligenci
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA STROJNÍHO INŽENÝRSTVÍ Ústav automatizace a informatiky Jiří Dvořák 2005 Obsah 1. Úvod......... 4 1.1 Funkcionální programování....... 4 1.2 Logické programování......
Paradigmata programování II Přednáška 2: Mutace
Paradigmata programování II Přednáška 2: Mutace Vilém Vychodil Katedra informatiky, Univerzita Palackého v Olomouci 22. února 2007 Vilém Vychodil (UP Olomouc) PP II, Př. 2: Mutace 22. února 2007 1 / 85
Paradigmata programování 1
Paradigmata programování 1 Kvazikvotování a manipulace se symbolickými výrazy Vilém Vychodil Katedra informatiky, PřF, UP Olomouc Přednáška 11 V. Vychodil (KI, UP Olomouc) Kvazikvotování, manipulace se
Slepé prohledávání do šířky Algoritmus prohledávání do šířky Při tomto způsobu prohledávání máme jistotu, že vždy nalezneme koncový stav, musíme ale p
Hanojská věž Stavový prostor 1. množina stavů S = {s} 2. množina přechodů mezi stavy (operátorů) Φ = {φ} s k = φ ki (s i ) zadání [1 1 1] řešení [3 3 3] dva možné první tahy: [1 1 2] [1 1 3] který tah
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 5. CVIČENÍ
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 5. CVIČENÍ 2011 Jan Janoušek MI-FLP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Page 1 of 5 Lekce 5 Obsah sekvence, sequencep, subseq, reverse,
Paradigmata programování 1
Paradigmata programování 1 Explicitní aplikace a vyhodnocování Vilém Vychodil Katedra informatiky, PřF, UP Olomouc Přednáška 6 V. Vychodil (KI, UP Olomouc) Explicitní aplikace a vyhodnocování Přednáška
PARADIGMATA PROGRAMOVÁNÍ 2A MUTACE
KATEDRA INFORMATIKY, P ÍRODOV DECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2A MUTACE Slajdy vytvo ili Vilém Vychodil a Jan Kone ný Jan Kone ný (KI, UP Olomouc) PP 2A, Lekce 2 Mutace
CO MATE ZA NOVÉ PROGRAMY?
-2- CO MATE ZA NOVÉ PROGRAMY? Od té doby, co jsem se stal majitelem osobního počítače, slýchám tuhle otázku - velmi často. Sám jsem majitelem mikropočítače od roku 1981 a myslím si, že znám SINCLAIR klub
Hanojská věž. T2: prohledávání stavového prostoru. zadání [1 1 1] řešení [3 3 3] dva možné první tahy: [1 1 2] [1 1 3]
Hanojská věž zadání [1 1 1] řešení [3 3 3] dva možné první tahy: [1 1 2] [1 1 3] který tah je lepší? (co je lepší tah?) P. Berka, 2012 1/21 Stavový prostor 1. množina stavů S = {s} 2. množina přechodů
1. Od Scheme k Lispu
KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI www.inf.upol.cz Michal Krupka krupka.inf.upol.cz michal.krupka@upol.cz 7. listopadu, 77 46 Olomouc Paradigmata programování poznámky k přednášce. Od
PARADIGMATA PROGRAMOVÁNÍ 2A INTERPRET S VEDLEJŠÍMI EFEKTY A MAKRY
KATEDRA INFORMATIKY, PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2A INTERPRET S VEDLEJŠÍMI EFEKTY A MAKRY VÝVOJ TOHOTO UČEBNÍHO MATERIÁLU JE SPOLUFINANCOVÁN EVROPSKÝM
Paradigmata programování 2
Paradigmata programování 2 6. cvičení Radek Janoštík Univerzita Palackého v Olomouci 18.3.2019 Radek Janoštík (Univerzita Palackého v Olomouci) Paradigmata programování 2 18.3.2019 1 / 11 Vedlejší efekt
Paradigmata programování 1
Paradigmata programování 1 Akumulace Vilém Vychodil Katedra informatiky, PřF, UP Olomouc Přednáška 7 V. Vychodil (KI, UP Olomouc) Akumulace Přednáška 7 1 / 33 Přednáška 7: Přehled 1 Akumulace pomocí foldr
Paradigmata programování II Přednáška 1: Vedlejší efekt
Paradigmata programování II Přednáška 1: Vedlejší efekt Vilém Vychodil Katedra informatiky, Univerzita Palackého v Olomouci 15. února 2007 Vilém Vychodil (UP Olomouc) PP II, Př. 1: Vedlejší efekt 15. února
PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA III
KATEDRA INFORMATIKY, P ÍRODOV DECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA III Slajdy vytvo ili Vilém Vychodil a Jan Kone ný (KI, UP Olomouc) PP 2A, Lekce 5 Makra III 1
PARADIGMATA PROGRAMOVÁNÍ 2A VEDLEJŠÍ EFEKT
KATEDRA INFORMATIKY, P RÍRODOV EDECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2A VEDLEJŠÍ EFEKT Slajdy vytvoril Vilém Vychodil Jan Konecný (KI, UP Olomouc) PP 2A, Lekce 1 Vedlejší
Paradigmata programování II Korutiny a nedeterminismus
Paradigmata programování II Korutiny a nedeterminismus Vilém Vychodil Katedra informatiky, Univerzita Palackého v Olomouci 27. dubna 2006 Vilém Vychodil (UP Olomouc) PP II, Př. 9: Korutiny, nedeterminismus
PARADIGMATA PROGRAMOVÁNÍ 2 PŘÍSLIBY A LÍNÉ VYHODNOCOVÁNÍ
KATEDRA INFORMATIKY, PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2 PŘÍSLIBY A LÍNÉ VYHODNOCOVÁNÍ Slajdy vytvořili Vilém Vychodil a Jan Konečný (KI, UP Olomouc) PP 2, Lekce
Paradigmata programování 1
Paradigmata programování 1 Tečkové páry, symbolická data a kvotování Vilém Vychodil Katedra informatiky, PřF, UP Olomouc Přednáška 4 V. Vychodil (KI, UP Olomouc) Tečkové páry, symbolická data a kvotování
Paradigmata programování II Přednáška 6: Líné vyhodnocování, proudy a kešované vyhodnocování
Paradigmata programování II Přednáška 6: Líné vyhodnocování, proudy a kešované vyhodnocování Vilém Vychodil Katedra informatiky, Univerzita Palackého v Olomouci 22. března 2007 Vilém Vychodil (UP Olomouc)
( ) 2.4.4 Kreslení grafů funkcí metodou dělení definičního oboru I. Předpoklady: 2401, 2208
.. Kreslení grafů funkcí metodou dělení definičního oboru I Předpoklady: 01, 08 Opakování: Pokud jsme při řešení nerovnic potřebovali vynásobit nerovnici výrazem, nemohli jsme postupovat pro všechna čísla
Popis a funkce klávesnice Gama originální anglický manuál je nedílnou součástí tohoto českého překladu
Popis a funkce klávesnice Gama originální anglický manuál je nedílnou součástí tohoto českého překladu Klávesnice Gama používá nejnovější mikroprocesorovou technologii k otevírání dveří, ovládání zabezpečovacích
Preddefinované premenné: PI Ludolfovo číslo ( ) t Konštanta = TRUE PAUSE = \\ = Pauza pre vstup užívateľa FUNKCIE:
alert (alert "TECHSIFT\ns.r.o. " TECHSOFT s.r.o. : Podtatranská 4931/23, 05801 Poprad, Slovak Republic Preddefinované premenné: PI Ludolfovo číslo (3.14159 t Konštanta = TRUE PAUSE = \\ = Pauza pre vstup
PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA I
KATEDRA INFORMATIKY, P ÍRODOV DECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2A MAKRA I Slajdy vytvo ili Vilém Vychodil a Jan Kone ný (KI, UP Olomouc) PP 2A, Lekce 3 Makra I 1 / 35
PARADIGMATA PROGRAMOVÁNÍ 2 KORUTINY, NEDETERMINISMUS
KATEDRA INFORMATIKY, P ÍRODOV DECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2 KORUTINY, NEDETERMINISMUS Slajdy vytvo ili Vilém Vychodil a Jan Kone ný (KI, UP Olomouc) PP 2, Lekce
PARADIGMATA PROGRAMOVÁNÍ 2 AKTUÁLNÍ POKRAƒOVÁNÍ
KATEDRA INFORMATIKY, P ÍRODOV DECKÁ FAKULTA UNIVERZITA PALACKÉHO, OLOMOUC PARADIGMATA PROGRAMOVÁNÍ 2 AKTUÁLNÍ POKRAƒOVÁNÍ Slajdy vytvo ili Vilém Vychodil a Jan Kone ný (KI, UP Olomouc) PP 2, Lekce 8 Aktuální
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 2. CVIČENÍ
FUNKCIONÁLNÍ A LOGICKÉ PROGRAMOVÁNÍ 2. CVIČENÍ 2011 Jan Janoušek MI-FLP Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti Page 1 of 7 MI-FLP cviceni 2 Obsah atomy (čísla, řetězy, symboly),
Lokální definice (1) plocha-kruhu
Lokální definice (1) syntaxe: (local (seznam definic) výraz) definice jsou dostupné pouze uvnitř příkazu local příklad: (local ( (define Pi 3.1415926) (define (plocha-kruhu r) (* Pi r r)) ) (plocha-kruhu
Úvod do programování v CAD
TECHNICKÁ UNIVERZITA V LIBERCI Fakulta strojní Katedra částí a mechanizmů strojů Doc. Ing. Ladislav Ševčík, CSc. Úvod do programování v CAD Visual LISP, Visual Basic, JAVA, Pro/PROGRAM pro AutoCAD, Inventor,
Dualita v úlohách LP Ekonomická interpretace duální úlohy. Jiří Neubauer. Katedra ekonometrie FEM UO Brno
Přednáška č. 6 Katedra ekonometrie FEM UO Brno Uvažujme obecnou úlohu lineárního programování, tj. úlohu nalezení takového řešení vlastních omezujících podmínek a 11 x 1 + a 1 x +... + a 1n x n = b 1 a
Funkcionální programování Scheme
Funkcionální programování Scheme Jan Hric, KTI MFF UK,1997-2012a http://ktiml.ms.mff.cuni.cz/~hric Funkcionální programování - historie lambda-kalkul, Alonzo Church 1936 LISP 1958 LISt Programming ML 1973
Analýza dat a modelování. Přednáška 3
Analýza dat a modelování Přednáška 3 Hierarchický model Hierarchical Data Manipulation Language - HDML manipulace s daty (vyhledávání) pomocí příkazů HDML v hierarchickém SŘBD připomíná princip práce se
Funkcionální programování Scheme
Funkcionální programování Scheme Jan Hric, KTI MFF UK,1997-2016a http://ktiml.ms.mff.cuni.cz/~hric Funkcionální programování - historie lambda-kalkul, Alonzo Church 1936 LISP 1958 LISt Programming ML 1973
Programování 4. hodina. RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015
Programování 4. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Stromy Reprezentace Binární vyhledávací
PG 9.5 novinky ve vývoji aplikací
PG 9.5 novinky ve vývoji aplikací P2D2 2016 Antonín Houska 18. února 2016 Část I GROUPING SETS, ROLLUP, CUBE Agregace Seskupení řádků tabulky (joinu) do podmnožin podle určitého kĺıče. Za každou podmnožinu
1. Programování, typy programovacích jazyků, historie.
1. Programování, typy programovacích jazyků, historie. třída Console metody Write, WriteLina, ReadLine, ResetColor vlastnosti ForegroundColor, Backgroundcolor třída Form objekt Label vlastnost Text význam
16. února 2015, Brno Připravil: David Procházka
16. února 2015, Brno Připravil: David Procházka Skrývání implementace Základy objektového návrhu Připomenutí návrhu použitelných tříd Strana 2 / 17 Obsah přednášky 1 Připomenutí návrhu použitelných tříd
KMI/PRCL. FORMAT, LOOP, packages, QuickLoad
KMI/PRCL FORMAT, LOOP, packages, QuickLoad Ještě chvilku makra (defmacro with-gensyms (vars &body body) `(let,(loop for v in vars collect `(,v (gensym))),@body)) (defmacro once-only ((&rest names) &body
PARADIGMATA OBJEKTOVÉHO PROGRAMOVÁNÍ I
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO PARADIGMATA OBJEKTOVÉHO PROGRAMOVÁNÍ I MICHAL KRUPKA VÝVOJ TOHOTO UČEBNÍHO TEXTU JE SPOLUFINANCOVÁN EVROPSKÝM SOCIÁLNÍM FONDEM A STÁTNÍM
Funkcionální programování
Funkcionální programování Scheme ale i trochu C#, Boo, Perlu, Smalltalku apod. Jiří Fišer MMVIII Funkcionální paradigma funkcionální paradigma je jedním z klasických paradigmat programování (podobně jako
INFORMATIKA WORD 2007
INFORMATIKA WORD 2007 Název školy Číslo projektu Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Vzdělávací obor Vzdělávací okruh Druh učebního materiálu Cílová skupina Střední
Expertní Systémy. Umělá inteligence. 1950 Alan Turing: Computing Machinery and Intelligence. Mind 59, 1950, s.433-460
Umělá inteligence Věda, jejímž úkolem je naučit stroje, aby dělaly věci, které vyžadují inteligenci, jsouli prováděny člověkem. Marvin Minsky 1950 Alan Turing: Computing Machinery and Intelligence. Mind
A4B33ALG 2010/05 ALG 07. Selection sort (Select sort) Insertion sort (Insert sort) Bubble sort deprecated. Quicksort.
A4B33ALG 2010/05 ALG 07 Selection sort (Select sort) Insertion sort (Insert sort) Bubble sort deprecated Quicksort Stabilita řazení 1 Selection sort Neseřazeno Seřazeno Start T O U B J R M A K D Z E min
Záloha a obnovení Uživatelská příručka
Záloha a obnovení Uživatelská příručka Copyright 2007-2009 Hewlett-Packard Development Company, L.P. Windows je ochranná známka společnosti Microsoft Corporation registrovaná v USA. Informace uvedené v
Operace na datových strukturách
Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Operace na datových strukturách Binární stromy Reprezentace grafů Úvod do umělé inteligence 2/12 1 / 26 Operace na datových strukturách
SQL tříhodnotová logika
SQL tříhodnotová logika Jmeno Prijmeni Student Jaroslav Novák true Josef Novotný false Jiří Brabenec SELECT * FROM OSOBA WHERE Student!= true Jaký bude výsledek? SQL tříhodnotová logika Jmeno Prijmeni
Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky. 9. června 2007. krovacek@students.zcu.cz
Databáze čajových sáčků Martina Málková Západočeská univerzita v Plzni Katedra informatiky a výpočetní techniky Databázové systémy 2 9. června 2007 krovacek@students.zcu.cz 1 1 Datová analýza V původním
očekávaný výstup Člověk a příroda 2. stupeň P znát základní funkce hlavních orgánů a orgánových soustav rostlin i živočichů ročník 6. č.
č. 18 název anotace očekávaný výstup druh učebního materiálu Pracovní list druh interaktivity Aktivita ročník 6. Význam a rozmnožování organismů - opakování V pracovních listech si žáci zopakují význam
JAK PŘIDAT UŽIVATELE PRO ADMINISTRÁTORY
JAK PŘIDAT UŽIVATELE PRO ADMINISTRÁTORY Po vytvoření nové společnosti je potřeba vytvořit nové uživatele. Tato volba je dostupná pouze pro administrátory uživatele TM s administrátorskými právy. Tento
Operace na datových strukturách
Operace na datových strukturách Aleš Horák E-mail: hales@fi.muni.cz http://nlp.fi.muni.cz/uui/ Obsah: Operace na datových strukturách Binární stromy Reprezentace grafů Úvod do umělé inteligence 2/12 1
2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE
2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE Studijní cíl Tento blok je věnován základní syntaxi příkazu SELECT, pojmům projekce a restrikce. Stručně zde budou představeny příkazy
Obsah. 1. PicoLisp: dokončení popisu a několik praktických rad na závěr. 2. Použití
Root.cz (http://www.root.cz/)» Programovací jazyky (/programovaci-jazyky/)» PicoLisp: dokončení popisu a několik praktických rad na závěr PicoLisp: dokončení popisu a několik praktických rad na závěr Pavel
Homer. prvky. délka. přední 0 zadní 4. Použití fronty BUS STOP. 3 Lisa. 2 Bart. 4 Maggie. 1 Marge. Grafické znázornění předchozí animace:
Fronta Fronta je sekvence first-in-first-out (první do fronty první z fronty) prvků. Prvky mohou být vkládány pouze nakonec (rear) fronty a odstraňovány pouze zpočátku (front) fronty Délka fronty je počet
Databázové systémy II. KIV/DB2 LS 2007/2008. Zadání semestrální práce
Databázové systémy 2 Jméno a příjmení: Jan Tichava Osobní číslo: Studijní skupina: čtvrtek, 4 5 Obor: ININ SWIN E-mail: jtichava@students.zcu.cz Databázové systémy II. KIV/DB2 LS 2007/2008 Zadání semestrální
Lineární datové struktury
Lineární datové struktury doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 13. března 2017 Jiří Dvorský (VŠB TUO) Lineární datové
Kurz Databáze. Obsah. Dotazy. Zpracování dat. Doc. Ing. Radim Farana, CSc.
1 Kurz Databáze Zpracování dat Doc. Ing. Radim Farana, CSc. Obsah Druhy dotazů, tvorba dotazu, prostředí QBE (Query by Example). Realizace základních relačních operací selekce, projekce a spojení. Agregace
Kolekce ArrayList. Deklarace proměnných. Import. Vytvoření prázdné kolekce. napsal Pajclín
Kolekce ArrayList napsal Pajclín Tento článek jsem se rozhodl věnovat kolekci ArrayList, protože je to jedna z nejpoužívanějších. Tento článek není kompletním popisem třídy ArrayList, ale budu se snažit
Advance Design 2013 / SP1
Advance Design 2013 / SP1 Tento dokument popisuje vylepšení v Advance Design 2013 Service Pack 1. První Service Pack pro Advance design 2013 obsahuje více než 110 vylepšení a oprav. Měl by být nainstalován
Zoner photo studio 13 3. část
Zoner photo studio 13 3. část Autor: Ivana Řezníčková Datum: 25. 2. 2014 Cílový ročník: 6. Život jako leporelo, registrační číslo CZ.1.07/1.4.00/21.3763 Vzdělávací oblast: Informační a komunikační technologie
Geometrické vektory. Martina Šimůnková. Katedra aplikované matematiky. 9. března 2008
Geometrické vektory Martina Šimůnková Katedra aplikované matematiky 9. března 2008 Martina Šimůnková (KAP) Geometrické vektory 9. března 2008 1/ 27 Definice geometrického vektoru 1 Definice geometrického
Hranolový spektrometr
Hranolový spektrometr a vodíkové spektrum Ú k o l y 1. Okalibrujte hranolový spektro.. Určente vlnové délky spektrálních čar vodíkové výbojky. 3. Určente kvantové elektronové přechody v atomu vodíku. 4.
Programování 3. hodina. RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015
Programování 3. hodina RNDr. Jan Lánský, Ph.D. Katedra informatiky a matematiky Fakulta ekonomických studií Vysoká škola finanční a správní 2015 Umíme z minulé hodiny Implementace zásobníku a fronty pomocí
NEDĚLE Svátek sv. Rodiny Obnova manželských slibů PONDĚLÍ 6. den v oktávu Narození Páně. 8:30 Troubky
, Dědina 113/41, PSČ. 751 02 / mobil. 731 402 070 29.12. 30.12. 31.12. 1.1. 2.1. 3.1. 4.1. Svátek sv. Rodiny Obnova manželských slibů 6. den v oktávu Narození Páně 6. den v oktávu Narození Páně Slavnost
Opakování podstatných jmen
Opakování podstatných jmen MASARYKOVA ZÁKLADNÍ ŠKOLA A MATEŘSKÁ ŠKOLA VELKÁ BYSTŘICE projekt č. CZ.1.07/1.4.00/21.1920 Název projektu: Učení pro život Číslo DUMu:VY_32_INOVACE_12_01 Tématický celek:gramatika,
pracovní list Anorganická chemie Halogeny Mgr. Alexandra Šlegrová
Název školy Číslo projektu STŘEDNÍ ODBORNÁ ŠKOLA a STŘEDNÍ ODBORNÉ UČILIŠTĚ, Česká Lípa, 28. října 2707, příspěvková organizace CZ.1.07/1.5.00/34.0880 Název projektu Klíčová aktivita Digitální učební materiály
Tvorba trendové funkce a extrapolace pro roční časové řady
Tvorba trendové funkce a extrapolace pro roční časové řady Příklad: Základem pro analýzu je časová řada živě narozených mezi lety 1970 a 2005. Prvním úkolem je vybrat vhodnou trendovou funkci pro vystižení
Definice uživatelského typu. Uživatelem definované typy. Součinové datové typy. Součtové datové typy. FLP - Uživatelem definované typy
Uživatelem definované typy Ing. Lumír Návrat katedra informatiky, A 1018 59 732 3252 Definice uživatelského typu data Color = Red Green Blue Color typový konstruktor Red / Green / Blue datové konstruktory
V týmové spolupráci jsou komentáře nezbytností. V komentářích se může např. kolega vyjadřovat k textu, který jsme napsali atd.
Týmová spolupráce Word 2010 Kapitola užitečné nástroje popisuje užitečné dovednosti, bez kterých se v kancelářské práci neobejdeme. Naučíme se poznávat, kdo, kdy a jakou změnu provedl v dokumentu. Změny
KIV/ZIS cvičení 5. Tomáš Potužák
KIV/ZIS cvičení 5 Tomáš Potužák Úvod do SQL (1) SQL (Structured Query Language) je standardizovaný strukturovaný dotazovací jazyk pro práci s databází Veškeré operace v databázi se dají provádět pomocí
PC, POWER POINT, dataprojektor
Název školy Číslo projektu Autor Název šablony Název DUMu Stupeň a typ vzdělávání Vzdělávací oblast Střední škola hotelová a služeb Kroměříž CZ.1.07/1.5.00/34.0911 Ing. Anna Grussová VY_32_INOVACE 29_MAR
Strava během dne 1.) 2.) Anketa pro 8. ročník. Snídáte pravidelně: A.) Ano B.) Někdy C.) Ne. Odpovědi: V procentech:
Anketa pro 8. ročník Strava během dne 1.) Snídáte pravidelně: A.) Ano B.) Někdy C.) Ne ano 41 59 51 někdy 37 34 35 ne 22 7 14 2.) Svačíte dopoledne pravidelně: A.) Ano B.) Někdy C.) Ne ano 48 65 57 někdy
Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115
Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115 Číslo projektu: Číslo šablony: Název materiálu: Ročník: Identifikace materiálu: Jméno autora: Předmět: Tématický celek: Anotace: CZ.1.07/1.5.00/34.0410
DUM téma: KALK Výrobek sestavy
DUM téma: KALK Výrobek sestavy ze sady: 2 tematický okruh sady: Příprava výroby a ruční programování CNC ze šablony: 6 Příprava a zadání projektu Určeno pro : 3 a 4 ročník vzdělávací obor: 23-41-M/01 Strojírenství
Anotace. Spojové seznamy, haldy. AVL-stromy, A-B stromy. Martin Pergel,
Anotace Spojové seznamy, fronta a zásobník. Vyvážené binární stromy, AVL-stromy, červeno-černé stromy, A-B stromy. Hashování, haldy. Typologie spojových seznamů jednosměrný a obousměrný prvek ukazuje jen
Algoritmizace prostorových úloh
INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Datové struktury Daniela Szturcová
Interpretace Dantova Pekla
Předmět: Doporučený ročník: Vazba na ŠVP: Literatura 1. ročník, 4.ročník (opakování) Světová renesance Cíle A Práce s uměleckým textem B Porozumění obsahu pozdně středověké poezie C Vyhledávání informací
POSLECH. M e t o d i c k é p o z n á m k y k z á k l a d o v é m u t e x t u:
POSLECH Jazyk Úroveň Autor Kód materiálu Anglický jazyk 5. třída Mgr. Milena Kašová aj5-mas-kas-pos-02 Z á k l a d o v ý t e x t : Peter is calling to his friend Steve. Steve lives in New York. Peter:
Pokročilé funkce a časté chyby. Petr Ferschmann FlexiBee Systems s.r.o.
Pokročilé funkce a časté chyby Petr Ferschmann FlexiBee Systems s.r.o. Filtrace /c/firma/adresar/(nazev like 'Firma') vlastnost operátor hodnota and, or, not, ( ) operátory: =, , =, in, between
Výukový materiál zpracovaný v rámci projektu Výuka moderně
Střední průmyslová škola strojnická Olomouc, tř. 17. listopadu 49 Výukový materiál zpracovaný v rámci projektu Výuka moderně Registrační číslo projektu: CZ.1.07/1.5.00/34.0205 Šablona: III/2Management
Windows 10 (6. třída)
Windows 10 (6. třída) Okno spuštěné aplikace: takto vypadá okno aplikace Malování - panel nástrojů Rychlý přístup Titulkový pruh se jménem souboru (Bez názvu) tlačka pro minimalizaci, obnovení z maxima
3.1 Výběrové dotazy z jedné tabulky
Kapitola 3: Dotazy 47 3. Dotazy Výběrové dotazy! Encian.mdb S31a Dotaz Nový dotaz 3.1 Výběrové dotazy z jedné tabulky Předpokládejme, že jsme připravili strukturu i obsah všech tabulek dle kap. 2.4. Nyní
Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU MS POWERPOINT 2010
Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU MS POWERPOINT 2010 Novinky v PowerPoint 2010 Správa souborů v novém zobrazení Backstage Automatické ukládání verzí prezentace Uspořádání snímků
ŘÍZENÍ FYZIKÁLNÍHO PROCESU POČÍTAČEM
VYSOKÁ ŠKOLA CHEMICKO-TECHNOLOGICKÁ V PRAZE FAKULTA CHEMICKO-INŽENÝRSKÁ Ústav počítačové a řídicí techniky MODULÁRNÍ LABORATOŘE ŘÍZENÍ FYZIKÁLNÍHO PROCESU POČÍTAČEM Programování systému PCT40 v LabVIEW
Biologie člověka nervová soustava kvarteto
Gymnázium K. V. Raise, Hlinsko, Adámkova 55 Biologie člověka nervová soustava kvarteto Pravidla hry: Hra se skládá z 32 karet. Zúčastnit se může libovolný počet hráčů žáků nejméně však 3, nejlépe 4. Karty
Fronta (Queue) Úvod do programování. Fronta implementace. Fronta implementace pomocí pole 1/4. Fronta implementace pomocí pole 3/4
Fronta (Queue) Úvod do programování Michal Krátký 1,Jiří Dvorský 1 1 Katedra informatiky VŠB Technická univerzita Ostrava Úvod do programování, 2004/2005 Fronta uplatňuje mechanismus přístupu FIFO first
Seznámení se shellem, textové editory numerické výpočty
A7B38UOS Úvod do operačních systémů 2. Cvičení Seznámení se shellem, textové editory numerické výpočty Obsah cvičení Práce s proměnnými Zpracování příkazové řádky Prompt Historie Editor vi A7B38UOS Úvod
Ročník: 1. Mgr. Jan Zmátlík Zpracováno dne: 25.9.2012
Označení materiálu: VY_32_INOVACE_ZMAJA_VODARENSTVI_15 Název materiálu: Přehled vlastností a struktura materiálu Tematická oblast: Vodárenství 1. ročník instalatér Anotace: Prezentace uvádí základní vlastnosti
Informační systémy 2008/2009. Radim Farana. Obsah. Jazyk SQL
4 Vysoká škola báňská Technická univerzita Ostrava Fakulta strojní, Katedra automatizační techniky a řízení 2008/2009 Radim Farana 1 Obsah Jazyk SQL, datové typy, klauzule SELECT, WHERE, a ORDER BY. Doporučená
Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář
Vazba (binding) Tabulka symbolů Miroslav Beneš Dušan Kolář vazba = spojení mezi entitou a vlastností okamžik vazby (binding time) při návrhu jazyka při implementaci jazyka během překladu/spojování/zavádění
Databáze 2011/2012 T-SQL - kurzory, funkce. RNDr.David Hoksza, Ph.D.
Databáze 2011/2012 T-SQL - kurzry, funkce RNDr.David Hksza, Ph.D. http://siret.cz/hksza Osnva T-SQL kurzry T-SQL funkce Cvičení Kurzr Datvá struktura umžňující pracvat s výsledkem dtazu Smyslem kurzru
1.3.1 Kruhový pohyb. Předpoklady: 1105
.. Kruhový pohyb Předpoklady: 05 Předměty kolem nás se pohybují různými způsoby. Nejde pouze o přímočaré nebo křivočaré posuvné pohyby. Velmi často se předměty otáčí (a některé se přitom pohybují zároveň
Prolog 1-1. Rodinné vztahy pomocí Prologu:
Prolog 1-1 - Prolog znamená programování v logice - namísto otázky jak se má získat určitá hodta se ptáme co platí mezi objekty - vhodný jazyk pro úlohy kde nás zajímají vztahy mezi objekty - namísto definic
Semestrální práce k předmětu Konstruování s podporou PC Ing. Pavel Vrecion
Semestrální práce k předmětu Konstruování s podporou PC Ing. Pavel Vrecion Ukázka modelování 3D tělesa v programu AutoCAD 2007 CZ Vypracoval: Roman Toula TF ČZU, IV. semestr Datum: 20.7.2009 1 Předmět
Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David
Úvod do Prologu Prolog PROgramming in LOGic část predikátové logiky prvního řádu rozvoj začíná po roce 1970 Robert Kowalski teoretické základy Alain Colmerauer, David Warren (Warren Abstract Machine) implementace
RÁDIO KAZETOVÝ PŘEHRÁVAČ S CD
RÁDIO KAZETOVÝ PŘEHRÁVAČ S CD RRCD 3400 MP3 ČESKY Přehled ovládacích prvků CD TAPE/OFF RADIO ON VOLUME UBS 0 AC ~ Přepíná mezi přehráváním disků CD, přehráváním kazet (TAPE) a příjmem rozhlasových stanic
(pracovní verze textu určená pro studenty)
KATEDRA INFORMATIKY PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITA PALACKÉHO CVIČENÍ Z PARADIGMAT PROGRAMOVÁNÍ I Lekce 7: Akumulace Učební materiál k přednášce 16. listopadu 2006 (pracovní verze textu určená pro studenty)