Programování pro deskriptivní geometrii



Podobné dokumenty
Výrazy lze též zavést v nečíselných oborech, pak konstanty označuji jeden určitý prvek a obor proměnné není množina čísel.

3 Vývojová prostředí, základní prvky jazyka Java, konvence jazyka Java

Rostislav Horčík. 13. října 2006

Cílem kapitoly je seznámit studenta se strukturou programu a jeho překladem.

Algoritmus (nebo dřívějším pravopisem algorithmus)

1.1 Seminář z Informatiky. Charakteristika volitelného vyučovacího předmětu Seminář z Informatiky

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Gymnázium, Praha 10, Voděradská 2 Projekt OBZORY

Profilová část maturitní zkoušky 2015/2016

Druhá mocnina. Druhá odmocnina Druhá odmocnina. Předpoklady: V této hodině jsou kalkulačky zakázány.

Modul pro testování elektrických obvodů

Pokusy s kolem na hřídeli (experimenty s výpočty)

Asymptoty grafu funkce

Python. Zdeněk Philipp - Seznam.cz

Matematika 1. ročník. září

Želva se nachází v tzv. grafickém okně (zviditelníme ji klávesou +), v němž jsou vidět i čáry, které nakreslila.

Základní stavební prvky algoritmu

Matematika pro 9. ročník základní školy

Programování - úvod. Programování. Proces programování. Vlastnosti dobrého programu: Kapitola seznamuje se základními pojmy programování.

Střední průmyslová škola a Vyšší odborná škola technická Brno, Sokolská 1. Podpora digitalizace a využití ICT na SPŠ CZ.1.07/1.5.00/34.

Poruchy modul pro rychlé hlášení poruch z provozu.

Grafické řešení soustav lineárních rovnic a nerovnic

Funkce Vypracovala: Mgr. Zuzana Kopečková

Zvyšování kvality výuky technických oborů

1 Měření kapacity kondenzátorů

2.1. Pojem funkce a její vlastnosti. Reálná funkce f jedné reálné proměnné x je taková

Novinky v programu Majetek 2.06

2.6.4 Lineární lomené funkce s absolutní hodnotou

Střední škola pedagogická, hotelnictví a služeb, Litoměříce, příspěvková organizace

Business Contact Manager Správa kontaktů pro tisk štítků

Goniometrie trigonometrie


Lineární algebra. Vektorové prostory

Prostorové indexační techniky. Zdeněk Kouba

SBÍRKA ZÁKONŮ. Ročník 2016 ČESKÁ REPUBLIKA. Částka 10 Rozeslána dne 28. ledna 2016 Cena Kč 210, O B S A H :

Řešení: 20. ročník, 2. série

AMU1 Monitorování bezpečného života letounu (RYCHLÝ PŘEHLED)

Využití fixních a variabilních nákladů pro manažerské rozhodování a finanční řízení

Matrika otázky a odpovědi Vidimace částečné listiny. Ing. Markéta Hofschneiderová Eva Vepřková

Návrh rozměrů plošného základu

(k 1)x k + 1. pro k 1 a x = 0 pro k = 1.

MS Word 2007 REVIZE DOKUMENTU A KOMENTÁŘE

Fyzikální praktikum 3 - úloha 7

MODEL MOSTU. Ing.Jiřina Strnadová. Evropský sociální fond Praha a EU Investujeme do vaší budoucnosti. Předmět:Fyzika

Základy počítačové grafiky

Přechodové jevy, osciloskop

1.7. Mechanické kmitání

Výchovné a vzdělávací strategie pro rozvoj klíčových kompetencí žáků

I. Objemové tíhy, vlastní tíha a užitná zatížení pozemních staveb

NÁVOD NA PŘIHLÁŠENÍ DO INTERNETOVÉHO BANKOVNICTVÍ PRO SPRÁVU KREDITNÍ KARTY

Sbírka zákonů ČR Předpis č. 27/2016 Sb.

Obsah. Úvodem 9 Komu je kniha určena 9 Forma výkladu 9 Konkrétní postup výuky 10 Příklady ke knize 11

Algoritmizace a programování

Inovace výuky prostřednictvím šablon pro SŠ

27/2016 Sb. VYHLÁŠKA ČÁST PRVNÍ ÚVODNÍ USTANOVENÍ ČÁST DRUHÁ

2.8.8 Kvadratické nerovnice s parametrem

Konverze textových formátů

5.1.2 Volné rovnoběžné promítání

Moderní technologie ve studiu aplikované fyziky CZ.1.07/2.2.00/ Reálná čísla

ICT podporuje moderní způsoby výuky CZ.1.07/1.5.00/ Český jazyk jazykové rozbory. Mgr. Jana Hlaváčová

Výsledky testování školy. Druhá celoplošná generální zkouška ověřování výsledků žáků na úrovni 5. a 9. ročníků základní školy. Školní rok 2012/2013

Metodická pomůcka pro hodnotitele

Zvyšování kvality výuky technických oborů

Digitální učební materiál

Technický popis koncovky výfukového systému vozu Mercedes Econic 1833LL:

Zvyšování kvality výuky technických oborů

Příklad 1.3: Mocnina matice

NUR - Interaktivní panel, D1

4. R O V N I C E A N E R O V N I C E

SITEMAP / STRUKTURA. VÝVOJ ONLINE PREZENTACE / ETAPA I. CLIENT / DHL Global Forwarding THEQ ALL GOOD THINGS

Příručka pro práci s dataloggerem Labquest 2. Zapínání a domácí obrazovka

Evidence dat v prostředí MS Excelu Kontingenční tabulka a kontingenční graf

Rovnice s neznámou pod odmocninou I

1. Obecný přehled. Historie. Zaměření léčby. Program denního stacionáře. Terapeutický tým

Grafický manuál jednotného vizuálního stylu. MACHINERY group

OBEC PŘIBYSLAVICE. Zastupitelstvo obce Přibyslavice. Obecně závazná vyhláška. Obce Přibyslavice Č. 1/2015

STUDNY a jejich právní náležitosti.

Matematika. Charakteristika vyučovacího předmětu. Výchovné a vzdělávací strategie pro rozvíjení klíčových kompetencí žáků

KVADRATICKÉ ROVNICE A NEROVNICE (početní a grafická řešení)

titul před titul za rodné číslo datum narození (nebylo-li přiděleno rodné číslo)

Osvětlovací modely v počítačové grafice

( ) ( ) Sčítání vektorů. Předpoklady: 7201

Aritmetika s didaktikou II.

František Hudek. červen ročník. Nastavení myši, místní a jazykové nastavení.

Vyhláška č. 294/2015 Sb., kterou se provádějí pravidla provozu na pozemních komunikacích

KVALIFIKOVANÝ SOUHLAS SE ZPRACOVÁNÍM OSOBNÍCH ÚDAJU dle Zákona č. 101/2000 Sb. O ochraně osobních údajů

4. 1. Učební plán ŠVP pro ZŠS Nejhravější škola Tabulace učebního plánu pro DÍL I: Vzdělávací Vzdělávací

Algoritmizace a programování

7. Silně zakřivený prut

Registr UJO. Příručka pro uživatele. Institut biostatistiky a analýz. Lékařské a Přírodovědecké fakulty Masarykovy univerzity.

KLÍČE KE KVALITĚ (METODIKA II)

VYUŽITÍ M-LEARNINGU PŘI VÝUCE

Základní škola a mateřská škola, Ostrava-Hrabůvka, Mitušova 16, příspěvková organizace Školní vzdělávací program 2. stupeň, Matematika.

Numerická integrace. 6. listopadu 2012

Karty externích médií Uživatelská příručka

Metody hodnocení rizik

ŠKOLNÍ VZDĚLÁVACÍ PROGRAM

Ukázka knihy z internetového knihkupectví

NÁVOD K OBSLUZE MODULU VIDEO 64 ===============================

1.2.7 Druhá odmocnina

Transkript:

Programování pro deskriptivní geometrii Luboš Moravec Katedra didaktiky matematiky Matematicko-fyzikální fakulta Univerzita Karlova v Praze Gymnázium Na Pražačce, Praha 21. 10. 2013 Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 1 / 10

Doporučená literatura algoritmy a datové struktury Töpfer, P.: Algoritmy a programovací techniky, Prometheus, Praha používá Pascal Wróblewski, P.: Algoritmy: Datové struktury a programovací techniky, Computer Press, Praha používá C++ jazyk Python Swaroop C. H.: A Byte of Python, dostupné online Švec J.: Učebnice jazyka Python, dostupné online pro starší verzi Pythonu Downey A.: Think Python, dostupné online Pilgrim M: Ponořme se do Pythonu 3, dostupné online a další Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 2 / 10

Algoritmus podle jména matematika al-chwárizmího postup, resp. návod jak vyřešit daný problém pro rozličné hodnoty jeho parametrů příklady písemné sčítání, násobení, dělení konstrukce trojúhelníka podle věty sss řešení soustavy rovnic sčítací metodou cesta do školy psaní slova na mobilu přesazování begonií otevírání dveří apod. zajímá nás konečnost správnost složitost (efektivita) Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 3 / 10

Složitost algoritmu základní dělení paměťová náročnost algoritmu na obsazenou paměť v průběhu výpočtu vyjadřuje nárůst paměti použité v průběhu výpočtu v závislosti na velikosti dat v současnosti je paměti relativní dostatek, avšak její kapacita není nekonečná časová vyjadřuje nárůst doby výpočtu v závislosti na velikosti dat nepříznivá může vést k nepoužitelnosti algoritmu pro větší data někdy lze např. zajistit lepší časovou složitost za cenu zhoršení paměťové budeme se snažit je odhadovat a porovnávat tak naše algoritmy Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 4 / 10

Časová složitost soustředíme se především na asymptotickou složitost tedy na složitost pro nekonečně velká data pro malá data může být jiná rozlišujeme složitost v nejlepším případě v průměrném případě v nejhorším případě symbol O(n) složitost vyjadřujeme funkcí, obvykle nás zajímá jen nejsilnější člen výrazu pro data velikosti n tedy např.: O(n) = log n O(n) = n O(n) = n log n O(n) = n 2 O(n) = 2 n Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 5 / 10

Příklad vyhledání údaje v setříděné posloupnosti dat číslo v telefonním seznamu záznam v kartotéce kapitola v knize možnosti postupné hledání od začátku do konce v nejhorším případě O(n) zvětší-li se data 100, i čas výpočtu se 100 prodlouží použijeme-li dvakrát rychlejší počítač, výpočet bude trvat poloviční dobu vyhledávání půlením intervalů v nejhorším případě O(log 2 n) zvětší-li se data 100 čas vzroste 6,64 použijeme-li dvakrát rychlejší počítač, výpočet bude trvat 2 n kratší dobu naopak, pokud bychom měli algoritmus s exponenciální složitostí (např. prohledávání všech možností při šachu), zrychlení počítače by na rychlost výpočtu mělo jen nepatrný vliv Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 6 / 10

Složitost problému vedle složitosti algoritmu můžeme také zjišťovat složitost problému stanoví, jak nejrychleji lze daný problém řešit bez ohledu na známost algoritmu dané rychlosti Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 7 / 10

Programovací jazyk způsob zápisu algoritmu různé filosofie, různé přístupy pro počítač tvoříme zdrojový kód (obvykle prostý textový soubor) kompilované jazyky (Pascal, C++) překládají zdrojový kód do strojového a vytváří samostatně spustitelný binární kód rychlejší náročnější na technické porozumění dané platformě interpretované (PHP, Python, Java) program (běhové prostředí) provádí zadané instrukce bez překladu nutnost nainstalovaného běhového prostředí obvykle pomalejší nezávislé na platformě Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 8 / 10

Proč Python moderní a používaný stručný, jasný, výstižný, přímočarý, pragmatický syntaxe nutí k přehlednému kódu vysoko položený bez technických podrobností umožňuje soustředit se na algoritmus, ne na překlad do jazyka snadno dostupný včetně základního IDE multiplatformní rozumí si s češtinou Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 9 / 10

Hello world! vypíše na obrazovku Hello world! Python print( Hello world! ) Pascal begin write( Hello world! ); end. Java public class HelloWorld { public static void main(string[] args) { System.out.println("Hello world!"); } } Luboš Moravec (KDM MFF UK) Programování pro DG 21. 10. 2013 10 / 10