Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)



Podobné dokumenty
Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

Pro kontrolu správného formátu hodnoty N použijeme metodu try-catch.

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

Numerické metody optimalizace

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

Matematika I A ukázkový test 1 pro 2018/2019

Indexové seznamy. známe už pole, kde ale musí být předem známa velikost indexové seznamy umí růst dynamicky

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

Lokace odbavovacího centra nákladní pokladny pro víkendový provoz

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

BAYESŮV PRINCIP ZDENĚK PŮLPÁN

Tabulková data. budeme pracovat s CSV soubory položky oddělené středníkem, např.

Obrázek 6.14: Prohlížec nápovedy

PROMĚNNÉ, KONSTANTY A DATOVÉ TYPY TEORIE DATUM VYTVOŘENÍ: KLÍČOVÁ AKTIVITA: 02 PROGRAMOVÁNÍ 2. ROČNÍK (PRG2) HODINOVÁ DOTACE: 1

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

Návod k obsluze. Hoval CZ s.r.o. Republikánská Plzeň tel/fax: (+420) , (+420) info@hoval.cz

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

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

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

prostřednictvím ICT Téma didaktického materiálu RNDr. Václava Šrůtková

Komponenty v.net. Obsah přednášky

Metodický list k didaktickému materiálu

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

POLE. - datová struktura ze složek stejného typu, ke kterým se přistupuje pomocí indexů


2. blok část B Základní syntaxe příkazů SELECT, INSERT, UPDATE, DELETE

Větvení programů příkaz IF

KOMPLEXNÍ ČÍSLA. Algebraický tvar komplexního čísla

A0M15EZS Elektrické zdroje a soustavy ZS 2011/2012 cvičení 1. Jednotková matice na hlavní diagonále jsou jedničky, všude jinde nuly

Monte Carlo metody Josef Pelikán CGG MFF UK Praha.

Bezdrátové ovládání pro Vaši domácnost. Katalog produktů

Desetinná čísla. pro celá čísla jsme používali typ int. pro desetinná čísla používáme typ double

Iterační výpočty. Dokumentace k projektu pro předměty IZP a IUS. 22. listopadu projekt č. 2

Jazyk C# - přístup k datům

17. Projekt Trojúhelníky

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

Semin aˇr Java V yjimky Radek Ko ˇc ı Fakulta informaˇcn ıch technologi ı VUT Unor 2008 Radek Koˇc ı Semin aˇr Java V yjimky 1/ 25

Téma 5: Parametrická rozdělení pravděpodobnosti spojité náhodné veličiny

NUMERICAL INTEGRATION AND DIFFERENTIATION OF SAMPLED TIME SIGNALS BY USING FFT

Robotika Kybernetika, automatizace a měření FEKT VUT v Brně

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

1. Téma 12 - Textové soubory a výjimky

Specifikace reklamních formátů HTML 5 pro nasazení do ibillboard Ad Server Verze 2/2015

Struktura třídy, operátory, jednoduché algoritmy, junit. Programování II 2. cvičení Alena Buchalcevová

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

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

Teoretické minimum z PJV

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

Michal Krátký. Úvod do programovacích jazyků (Java), 2006/2007

Tabulka symbolů. Vazba (binding) Vazba - příklad. Deklarace a definice. Miroslav Beneš Dušan Kolář

Novinky ve Visual Studio Tomáš Kroupa

MASARYKOVA UNIVERZITA PEDAGOGICKÁ FAKULTA

Obsah. Část I Začínáme s jazykem AppleScript

5 Přehled operátorů, příkazy, přetypování

2) Napište algoritmus pro vložení položky na konec dvousměrného seznamu. 3) Napište algoritmus pro vyhledání položky v binárním stromu.

Instrukce pro webmastery

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

Jazyk C# a platforma.net

Základy jazyka C# Obsah přednášky. Architektura.NET Historie Vlastnosti jazyka C# Datové typy Příkazy Prostory jmen Třídy, rozhraní

( x ) 2 ( ) Úlohy na hledání extrémů. Předpoklady: 10211

Objekty jako zapozdření dat. začneme vytvářet vlastní objekty a třídy

. Určete hodnotu neznámé x tak, aby

Java - výjimky. private void vstup() throws IOException {... }

Jazyk C# - přístup k datům

IRAE 07/08 Přednáška č. 7. Začátek (head)

Informační systém pro rezervaci pokojů hotelu SPORT

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

Jazyk C++ II. Výjimky

Kolekce ArrayList. Deklarace proměnných. Import. Vytvoření prázdné kolekce. napsal Pajclín

Univerzita Palackého v Olomouci Radek Janoštík (Univerzita Palackého v Olomouci) Základy programování 4 - C# 26.3.

4.4 Exploratorní analýza struktury objektů (EDA)

popsat činnost základních zapojení převodníků U-f a f-u samostatně změřit zadanou úlohu

Čísla a aritmetika. Řádová čárka = místo, které odděluje celou část čísla od zlomkové.

Jazyk C# (seminář 5)

Prezentace SE2. Připojení paměťové karty MMC k mikropočítači RCM3200

Z. Kotala, P. Toman: Java ( Obsah )

2. ELEKTRICKÉ OBVODY STEJNOSMĚRNÉHO PROUDU

radiační ochrana Státní úřad pro jadernou bezpečnost

A u. jsou po řadě počáteční a koncové body úsečky; t je parametr:

Metodický list k didaktickému materiálu

Druhy souborů. textové. binární. nestrukturované txt strukturované - ini, xml, csv. veřejné bmp, jpg, wav proprietární docx, cdr, psd

II. Úlohy na vložené cykly a podprogramy

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

Univerzita Pardubice. Dopravní fakulta Jana Pernera

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

Připravil: David Procházka. Programovací jazyk C++

Energie elektrického pole

Seminář z IVT Algoritmizace. Slovanské gymnázium Olomouc Tomáš Kühr

C++ Akademie SH. 2. Prom nné, podmínky, cykly, funkce, rekurze, operátory. Michal Kvasni ka. 20. b ezna Za áte níci C++

Středoškolská odborná činnost. Obor SOČ: 1. Matematika a statistika GRAFY FUNKCÍ

SUM U3 SUM U4 SUM U5 SUM

Zobrazování dat pomocí tabulek

Testy statistických hypotéz

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

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

Korelační energie. Celkovou elektronovou energii molekuly lze experimentálně určit ze vztahu. E vib. = E at. = 39,856, E d

Algoritmizace a programování

VYHLÁŠKA o způsobu stanovení pokrytí signálem zemského rozhlasového vysílání šířeného ve vybraných kmitočtových pásmech Vymezení pojmů

Transkript:

Programování jako nástroj porozumění matematce (serál pro web modernvyuka.cz) Autor: Radek Vystavěl, vystavel(zavnáč)modernprogramovan.cz Díl 15: Analýza Určtý ntegrál MATEMATIKA Integrál je v běžné řeč symbolem obtížné matematky stejně jako je Ensten symbolem genalty. Je takovým určtým završením studa matematky na střední škole. Bude završením pro nás. V tomto posledním díle serálu se budeme věnovat tomu, jak programování může napomoc k lepšímu zažtí tohoto pojmu. Neurčtý ntegrál nebol prmtvní unkce má jednou denc jde o unkc, jejíž dervací je unkce ntegrovaná. K denc ntegrálu určtého lze oprot tomu přstoupt hned několka způsoby. Lze postupovat přes lmtu, lze postupovat přes adtvtu a ohrančenost (zajímavý přístup, který jsem kdys vděl v knze Glmanově a Mc- Dowellově), exstuje Lebesgueův ntegrál atd. Já se zde přdržím dence Cauchy-Remannovy. S tou jsem se kdys seznáml jako první př četbě pěkné Hrušovy knhy Deset kaptol z derencálního a ntegrálního počtu. A znáte to, první láska Zmíněná dence pracuje s pojmy horních a dolních součtů a s dělením ntervalu. Interval <a, b>, na kterém unkc (x) ntegrujeme, se body x 0 = a < x 1 < x 2 < x n = b rozdělí na n ntervalů dílčích. Na každém dílčím ntervalu <x -1, x > se najde největší a nejmenší unkční hodnota, součet denován jako n = 1 max a max mn n ( x x 1), resp. = 1 Pro všechna možná dělení ntervalu <a, b> vznkne celá množna horních součtů a množna dolních součtů. Mnmum (strktně řečeno nmum) množny horních součtů se nazývá horním ntegrálem, maxmum (supremum) množny dolních součtů dolním ntegrálem. V případě jejch rovnost mluvíme prostě o ntegrálu. V tomto díle serálu vytvoříme program počítající horní a dolní součty unkce ( x) = x pro postupně se zjemňující dělení ntervalu, na kterém se ntegrál počítá. 2. Pro toto dělení je pak horní, resp. dolní mn ( x x ). 1

KONCEPČNÍ OTÁZKY PROGRAMU Pro jednoduchost budeme nterval dělt na stejně velké dílky. Počet dílků budeme postupně zvětšovat. Pro konkrétnost zvolíme unkc (x) = x 2, u níž se ntegrál snadno vypočítá ze známé prmtvní unkce x 3 /3. Ke hledání maxma, resp. mnma unkce na ntervalu s výhodou využjeme skutečnost, že x 2 je pro x > 0 neklesající (a mnmum je tudíž vždy na začátku ntervalu a maxmum na jeho konc). Výsledky zobrazíme v tabulce. Pro snadnější úpravu programu př změně ntegrované unkce umístíme výpočet unkční hodnoty a dalších pomocných hodnot do samostatných podprogramů. TECHNICKÉ OTÁZKY NA PLATFORMĚ.NET/C# Ovládací prvek tabulka najdete v Toolboxu v kategor Data pod názvem DataGrdVew. Nový řádek se do tabulky přdá voláním metody Add seznamu řádků Rows tabulky. Tabulka se vymaže přřazením nuly do vlastnost RowCount. Příkaz throw new Excepton(); vyvolá běhovou chybu. Pokud je umístěn v pokusném bloku try, chyba se hned zachytí v bloku catch. ŘEŠENÍ Uvádím zdrojový kód Form1.cs. usng System; usng System.Wndows.Forms; namespace Integrál publc partal class oknoprogramu : Form publc oknoprogramu() IntalzeComponent(); // Následující dva podprogramy změňte př změně ntegrované unkce prvate double IntegrovanáFunkce(double x) // Vrátí hodnotu ntegrované unkce v bodě x return x*x; prvate double PrmtvníFunkce(double x) // Vrátí hodnotu prmtvní unkce k unkc // ntegrované (v bodě x) return x*x*x / 3;

// Následující dva podprogramy změňte v případě, že // ntegrovaná unkce není neklesající prvate double MnmumNaIntervalu (double dílčídolnímez, double dílčíhornímez) // Vrátí mnmální hodnotu ntegrované unkce na // ntervalu <dílčídolnímez, dílčíhornímez> return IntegrovanáFunkce(dílčíDolníMez); prvate double MaxmumNaIntervalu (double dílčídolnímez, double dílčíhornímez) // Vrátí maxmální hodnotu ntegrované unkce na // ntervalu <dílčídolnímez, dílčíhornímez> return IntegrovanáFunkce(dílčíHorníMez); // Obsluha tlačítka prvate vod tlačítkospočt_clck(object sender, EventArgs e) try // Vymaž tabulku tabulka.rowcount = 0; // Zjst meze ntervalu double dolnímez = Convert.ToDouble(poleDolníMez.Text); double hornímez = Convert.ToDouble(poleHorníMez.Text); (dolnímez < 0 hornímez < dolnímez) throw new Excepton(); // Postupně zjemňuj dělení ntervalu nt početdílků = 10; or (nt terace = 0; terace < 15; terace++) double šířkadílku = (hornímez - dolnímez) / početdílků; double dolnísoučet = 0, hornísoučet = 0; double x1 = dolnímez; or (nt = 1; <= početdílků; ++) double x = x1 + šířkadílku; dolnísoučet += šířkadílku * MnmumNaIntervalu(x1, x); hornísoučet += šířkadílku * MaxmumNaIntervalu(x1, x); // Přprav další dílek x1 = x; // Zobraz součty a zjemn dělení tabulka.rows.add(početdílků, dolnísoučet, hornísoučet); početdílků *= 2; // Spočt a zobraz ntegrál dle vzorce double ntegrál = PrmtvníFunkce(horníMez) - PrmtvníFunkce(dolníMez); poleintegráldlevzorce.text = ntegrál.tostrng();

catch poleintegráldlevzorce.text = null; V odkazech na konc najdete také kompletní projekt pro Vsual C#. Spusttelný.EXE soubor z podsložky bn/debug využjete v případě, že toto vývojové prostředí na svém počítač nemáte. K běhu zmíněného.exe souboru je na cílovém počítač zapotřebí přítomnost.net Framework 3.5 (pokud není u vás nanstalován, stáhněte s jej zdarma ze stránek společnost Mcrosot, vz odkazy na konc). KAM DÁL V PROGRAMU Program lze rozvíjet celou řadou směrů, např. takto: 1. Předložený program možná přílš směřoval na lmtu, více by mohl být zaměřený na maxmum (supremum) a mnmum (nmum). 2. Program pracoval pouze se stejnoměrným dělením ntervalu. Dobré by bylo zkust také dělení nestejnoměrná. 3. Proč s rovněž nepohrát s nemonotónním unkcem? Maxmum a mnmum na ntervalu pak nebude tak jednoduché určt! KAM DÁL V MATEMATICE Kromě prohloubení představ o ntegrálu lze samozřejmě tento č podobný program používat pro ntegrac analytcky obtížně ntegrovatelných unkcí, čímž se podstatně rozšíří možnost aplkací. ODKAZY Kompletní projekt Integrál pro Vsual C#.NET Framework 3.5 PROGRAMOVÁNÍ NÁZORNĚ A SROZUMITELNĚ Chcete se naučt programovat nebo se v programování zdokonalt? Akredtované počítačové kurzy společnost moderníprogramování mohou být vaší správnou volbou. Na kurzech se učíte praktcky, lektor vám pomáhá překonat problémová místa, na cokol se můžete zeptat. Prozkoumejte nabídku kurzů na http://www.modernprogramovan.cz/kurzy/ Základní řada programovacích kurzů: Programování pro začátečníky Programování v.net/c# pro středně pokročlé Programování v.net/c# pro pokročlé

Programujeme na nové platormě, v novém jazyce: Přecházíme na Javu Přecházíme na.net/c# Databáze Databáze a SQL pro začátečníky (neprogramátorský kurz) Databázové aplkace na platormě.net/c# Web Tvorba webu, HTML a CSS pro začátečníky (neprogramátorský kurz) Základy webových aplkací ASP.NET Pokročlé webové aplkace ASP.NET