Počkejte prosím...
Data pro 2018/2019

Pokročilé programování a algoritmizace

Kredity 4
Rozsah 2 / 2 / 0
Examinace KZ
Jazyk výuky čeština
Úroveň magisterský předmět
Garant Ing. Vladislav Nevoral, Ph.D.
doc. RNDr. Tomáš Vaněk, CSc.

Anotace

Předmět je určen pro posluchače, kteří potřebují programování jako užitečný nástroj pro vědecko-technické a další obory. Hlavní zaměření je na jazyky třídy Fortran, C a C++. Kromě seznámení se se syntaxí a využitím příkazů i datových struktur je kladen důraz na systematičnost programování, používání programovacích technologií a programátorského rukopisu. Posluchači se také seznámí s teoretickým zázemím programovacích jazyků, definicí a využíváním algoritmů společně s hodnocením jejich časové a prostorové náročnosti. V přehledu budou charakterizovány i další proramovací jazyky, zejména v souvislosti s jednotlivými programovacími technologiemi. Praktická část tohoto předmětu je zaměřena na programování v uvedených jazycích s využitím integrovaných vývojových prostředí.

Sylabus


  1. Úvod - obecná problematika vytváření programového vybavení. Životní cyklus a kategorizace softwaru. Teorie formálních systémů a jejich použití pro programovací jazyky. Syntaktický a sémantický popis, formy zápisu syntaxe jazyka. Přehled vybraných aktuálních programovacích jazyků.

  2. Programovací technologie (metodiky) a jejich vztah k programovacím jazykům. Přehled používaných programovacích technologií. Principy strukturovaného programování. Programátorský rukopis.

  3. Algoritmy, jejich formální zápis a programová realizace. Časové a prostorové charakteristiky algoritmů. Datové struktury využívané v algoritmech. Některé obecně využitelné algoritmy.

  4. Jazyky kategorie Fortran - obecné charakteristiky a přehled verzí. Struktura programu, pevný a volný způsob zápisu. Datové typy, deklarace, operátory, standardní funkce, výrazy.

  5. Výkonné příkazy jazyka Fortran. Podprogramy. Vstupy a výstupy v jazyku Fortran.

  6. Pokročilejší prvky a konstrukce jazyka Fortran. Efektivní využívání polí a specifické operace s nimi. Ukazatelé a dynamická alokace. Moduly. Různé.

  7. Jazyk C. Základní charakteristiky a využití. Stavba programu, datové typy a operátory. Priorita operátorů.

  8. Jazyk C. Příkazy jazyka. Direktivy kompilátoru, symbolické konstanty a makra.

  9. Jazyk C. Definice a využití ukazatelů, struktur a odvozených datových typů. Další pokročilejší prvky jazyka.

  10. Jazyk C. Funkce (podprogramy), využívání funkční hodnoty a parametrů funkce.

  11. Jazyk C. Vybrané funkce ze standardních knihoven. Vstupní a výstupní operace. Operace s řetězci znaků. Vybrané matematické funkce. Operace s kalendářními daty. Funkce pro dynamickou alokaci a dealokaci paměti.

  12. Jazyk C++. Účel a základní vlastnosti. Rozdíly mezi C a C++.

  13. Jazyk C++. Objektově orientované a vizuální programování. Deklarace objektových tříd a jejich využití. Polymorfismus, dědičnost, přetěžování.

  14. Jazyk C++. Základní principy tvorby aplikací pro Windows.



Literatura


  1. Vaněk T.: Přednášky pro předmět PPA (elektronická forma).

  2. Walraet B.: Programming, the impossible challenge. North-Holland, 1989.

  3. Töpfer P.: Algoritmy a programovací techniky. PROMETHEUS, Praha 1995 (ISBN: 80-85849-83-6).

  4. Wróblewski P.: Algoritmy – datové struktury a programovací techniky. Computer Press, Brno 2004 (ISBN: 80-251-0343-9).

  5. Čada O.: Objektové programování - naučte se pravidla objektového myšlení. Grada Publishing, Praha 2009 (ISBN: ISBN 978-80-247-2745-5, elektronická verze ISBN: 978-80-247-6699-7).

  6. Hřebíček J. a kol.: Programovací jazyk FORTRAN 77 a vědeckotechnické výpočty. Academia Praha, 1989.

  7. Zahradník V.: Programování - Fortran 90. Skriptum ČVUT, Fakulta stavební, 1996.

  8. Davies R., Rea A., Tsaptsinos D.: Introduction to Fortran 90. An introduction course for novice students. Version 1. Cardiff HPC Training & Education Centre, 2000? (elektronická podoba).

  9. Sandu A.: Introduction to Fortran 95 and Numerical Computing. A Jump-Start for Scientists and Engineers. Lecture Notes. Computer Science Department, Michigan Technological University, 2001 (elektronická forma).

  10. Compaq Visual Fortran Language Reference. Visual Fortran Version 6.6 (elektronická forma). Compaq Computer Corporation, 2001.

  11. ISO/IEC: Normy pro jazyky třídy Fortran (elektronická forma).

  12. Virius M.: Jazyky C a C++. Kompletní kapesní průvodce programátora. Grada Publishing, Praha 2005/2010.

  13. Virius M.: Pasti a propasti jazyka C++. Grada Publishing, 1997.

  14. Eckel B.: Myslíme v jazyku C++. Grada Publishing, 2000.

  15. Kruglinski D.J.: Mistrovství ve Visual C++. Computer Press, 1999.

  16. Horton I.: Wrox Press C++ tutorial. Wrox Press, 1998 (elektronická učebnice).

  17. Horton I.: Introduction to Visual C++ 6.0 Standard Edition. Wrox Press, 1998.

  18. Jinoch J., Müller K., Vogel J.: Programování v jazyku Pascal. SNTL, Praha, 1986.

  19. Jirků P. a kol.: Programování v jazyku Prolog. SNTL, Praha 1991.


VŠCHT Praha
Technická 5
166 28 Praha 6 – Dejvice
IČO: 60461373
DIČ: CZ60461373

Datová schránka: sp4j9ch

Copyright VŠCHT Praha 2014
Za informace odpovídá Oddělení komunikace, technický správce Výpočetní centrum
zobrazit plnou verzi