F1400 Programování

Přírodovědecká fakulta
podzim 2018
Rozsah
1/1/0. 2 kr. Ukončení: z.
Vyučující
doc. RNDr. Petr Mikulík, Ph.D. (přednášející)
Garance
prof. RNDr. Josef Humlíček, CSc.
Ústav fyziky kondenzovaných látek – Fyzikální sekce – Přírodovědecká fakulta
Kontaktní osoba: doc. RNDr. Petr Mikulík, Ph.D.
Dodavatelské pracoviště: Ústav fyziky kondenzovaných látek – Fyzikální sekce – Přírodovědecká fakulta
Rozvrh
Po 17. 9. až Pá 14. 12. Út 8:00–8:50 F2 6/2012
  • Rozvrh seminárních/paralelních skupin:
F1400/01: Po 17. 9. až Pá 14. 12. Út 9:00–9:50 Fcom,01034
F1400/02: Po 17. 9. až Pá 14. 12. Út 16:00–16:50 Fcom,01034
Předpoklady
základní znalosti práce s PC
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Po úspěšném absolvování tohoto kursu by studenti měli být schopni
- popsat a vysvětlit základní algoritmy numerické matematiky (řady, iterace, vektorová a maticová algebra),
- využít získaných programovacích znalostí k tvorbě krátkých programů pro jednoduché výpočetní problémy v jazyku C,
- využít grafický systém gnuplot pro tvorbu grafů funkcí a zobrazování datových souborů,
- využít programy Octave a Matlab pro řešení základních úloh lineární algebry,
- použít typografický systém LaTeX pro tvorbu odborných textů.
Osnova
  • 1. Operační systémy. Programovací jazyky, programování. Psaní skriptů. Editory a vývojová prostředí. Dokumentace. Kreslení grafů. 2. Zobrazování čísel v počítači. Chyby výpočtu, systematická chyba, chyba metody, zaokrouhlovací chyby. Zákon šíření chyb. Špatně a dobře podmíněné úlohy. 3. Jazyk C. Základní struktura jazyka. Struktura programu. Identifikátory, proměnné a konstanty. Typy dat. Deklarace proměnných. Pole, alokování paměti. Řetězce. Přiřazovací příkazy. Aritmetické operace. Přiřazování různých typů dat. Příkazy vstupu a výstupu. Standardní I/O zařízení, vstup a výstup do souboru. Standardní funkce, knihovny. Podprogramy a makra. Skutečné a formální parametry. Knihovny. Jazyk C++. 4. Program gnuplot. Kreslení grafů funkcí a měřených či simulovaných dat. 5. Program a jazyk Octave / Matlab. Práce s programem a základní příkazy. M-soubory. Příkazy pro grafický výstup. Vstup a výstup dat. 6. Psaní vědeckých textů v typografickém systému LaTeX. Základní příkazy. Balíčky. Základy typografie. Typ a velikost písma. Definice prostředí. Psaní matematických vzorců a tabulek. Formátování textu. Bibliografie, vkládání obrázků.
Literatura
  • KERNIGHAN, Brian W. a Dennis M. RITCHIE. Programovací jazyk C : The C Programming Language (Orig.). Translated by Vladimír Benko. 1. vyd. Bratislava, Praha: Alfa, Státní nakladatelství technické literatury, 1988, 249 s. info
  • KERNIGHAN, Brian W. a Dennis M. RITCHIE. Programovací jazyk C. 2. vyd. Bratislava: Alfa, 1989, 249 s. ISBN 80-05-00154-1. info
  • STROUSTRUP, Bjarne. C++ : programovací jazyk : The C++ programming language (Orig.). 1. české vyd. Praha: Softwarové Aplikace a Systémy, 1997, 686 s. ISBN 80-901507-2-1. info
  • RYBIČKA, Jiří. Latex pro začátečníky. 2. vyd. Brno: Konvoj, 1999, 190 s. ISBN 8085615746. info
  • LAMPORT, Leslie. LATEX : a document preparation system : user's guide & reference manual. Illustrated by Duane Bibby. Reading: Addison-Wesley Publishing Company, 1986, 242 s. ISBN 0-201-15790-X. info
  • GOOSSENS, Michel, Frank MITTELBACH a Alexander SAMARIN. The LaTeX companion. Reading, Mass.: Addison Wesley, 1994, 528 s. ISBN 0-201-54199-8. info
  • http://www.octave.org/docs.html; http://octave.sourceforge.net
  • HERINGOVÁ, Blanka a Petr HORA. Matlab pro Windows. Praha: H-S, 1995, 147 s. info
  • HERINGOVÁ, Blanka a Petr HORA. Matlab pro Windows. Praha: H-S, 1995, l sv. info
  • GANDER, W. a Jiří HŘEBÍČEK. Solving Prolems in Scientific Computing Using Maple and MATLAB. 3. vyd. Heidelberg: Springer Verlag, 1997, 408 s. ISBN 3-540-61793-0. info
Výukové metody
Výuka probíhá formou přednášky a praktických cvičení v počítačové laboratoři. Seminář přímo navazuje na problematiku probranou na předchozí přednášce. Doporučuji zapsat i seminář F1400a pro rozšíření cvičení na 2 hodiny (cvičení na sebe navazují, zápočtové úlohy jsou identické).
Metody hodnocení
Během semestru student prokáže 1. funkčnost programů, které ve cvičeních vypracoval, 2. text (např. protokol do praktika, zpráva apod.), který napsal v LaTeXu, 3. zvládnutí testu o základní počítačové gramotnosti. Pro udělení zápočtu každý student předloží funkční program řešící konkrétní úlohu z numerické matematiky, zdokumentovaný pomocí systému LaTeX.
Navazující předměty
Informace učitele
http://www.physics.muni.cz/~mikulik/vyuka/
Na webové stránce předmětu budou uveřejněny zápočtové úlohy. The web page given of the course will list the credit problems.
Další komentáře
Studijní materiály
Předmět je dovoleno ukončit i mimo zkouškové období.
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích podzim 2007 - akreditace, podzim 1999, podzim 2010 - akreditace, podzim 2000, podzim 2001, podzim 2002, podzim 2003, podzim 2004, podzim 2005, podzim 2006, podzim 2007, podzim 2008, podzim 2009, podzim 2010, podzim 2011, podzim 2011 - akreditace, jaro 2012 - akreditace, podzim 2012, podzim 2013, podzim 2014, podzim 2015, podzim 2016, podzim 2017, podzim 2019, podzim 2020, podzim 2021, podzim 2022, podzim 2023, podzim 2024.