Posláním předmětu je seznámení studentů s univerzálním jazykem nízké úrovně, s jeho syntaxí, která je dnes běžná i většiny programovacích jazyků, a se specifiky jazyka zejména v oblasti přístupu k datům, pochopení základních programových konstrukcí, filozofie datových typů a příslušných operátorů, včetně možností ukazatelů v přístupu do paměti a dále rozvinutí praktických dovedností s důrazem na adekvátní využívání prostředků, resp. konstrukcí jazyka. V rovině programování je předmět obsahově orientován na základní prostředky jazyka C, proměnné, konstanty, příkazy, operátory, podmíněné příkazy, cykly a využití vlastních i knihovních funkcí. Vedle základních prostředků je hlavní důraz kladen na práci se souborem, třídící algoritmy a vstupně výstupní operace.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
The course mission is to acquaint students with this low-level universal language (currently one of the most common programming languages), its syntax and specifics (particularly in terms of data access); as well as impart an understanding of basic programming structures, the philosophy of variable types and relevant operators (including the potential of pointers in memory access), and further develop practical skills with an emphasis on appropriate use of this tool (i.e. language construction). At the programming level, course content focuses on the basic tools of the C language, variables, constants, commands, operators, if statements, loops, and the use of both user-defined and library functions. In addition to this basic tool, the course also places great emphasis on working with files, sorting algorithms, and standard input / output operations.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Cíl předmětu -
Cílem předmětu Algoritmizace a programování je dosáhnout u studentů osvojení základních poznatků a dovedností z oblasti algoritmizace a programování včetně ovládnutí tvorby základních algoritmických konstrukcí, a to s použitím jazyka C.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
The Algorithm Development and Programming course aims to enable students to master fundamental knowledge and skills in the fields of algorithm development and programming, including mastery in the creation of basic algorithmic construction with the C programming language.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Deskriptory
V případě distanční výuky bude kurz probíhat v řádně rozvrhované době (dle SIS) a v prostředí Google Meet. K připojení do online výuky je třeba pouze webový prohlížeč. Online výuka bude probíhat na adrese:
https://meet.google.com/dmo-jfka-tmn
Pro podporu studia bude též využit LMS Moodle:
název kurzu Moodle: Algoritmizace a programování DISTANČNÍ
klíč k zápisu: bude sdělen na první online výuce a následně zaslán účastníkům kurzu e-mailem prostřednictvím SIS
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (01.02.2021)
Podmínky zakončení předmětu
KLASIFIKOVANÝ ZÁPOČET
Podmínkou pro udělení klasifikovaného zápočtu je odevzdání úkolů, které budou zadávány a odevzdávány průběžně prostřednictvím VLE Moodle, přičemž je nutné dosáhnout celkového průměrného hodnocení úkolů alespoň 80 %. Neodevzdané úkoly se započítávají do průměru s hodnocením 0 %. Všechny úkoly bude možné na základě hodnocení přepracovat a odevzdat znovu (termín pro přepracovanou verzi bude adekvátně posunut).
Klasifikace bude udělena na základě vypracování úloh závěrečného zadání, které bude realizováno prezenční formou v předem vypsaných termínech v SIS. Závěrečném zadání, které studující obdrží bude obsahovat 4 - 6 jednodušších úloh a jeho úkolem bude naprogramovat funkční řešení ve stanoveném časovém limitu.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Literatura -
Základní literatura:
HANÁK, J. Programování v jazyce C. Praha: Computer Media, 2011.
HEROUT, P. Učebnice jazyka C. Praha: Kopp, 2009.
PROKOP, J. Algoritmy v jazyku C a C++. Praha: Grada, 2012.
VIRIUS, M. Jazyky C a C++. Praha: Grada, 2011.
VIRIUS, M. Základy algoritmizace. Praha: ČVUT, 2008.
Doporučená literatura:
CORMEN, T. H. Introduction to Algorithms. 3th edition. Amazon 2009.
DOSTÁL, R. C/C++ Hotová řešení. Praha: Computerpress, 2010.
GENTILE, M. An Easy Guide to Programming in C. Boston: CreateSpace, 2012.
GRIFFITHS, D. Head First C. O'Reilly Media, 2012.
HEROUT, P. Učebnice jazyka C 2.díl. Praha Kopp, 2008.
HORTON, I. Beginning C. Apress, 2011.
KERNIGHAN, B., RITCHIE, D. Programovací jazyk C. Praha: Computerpress, 2006 .
KNUTH, D. Umění programování – základní algoritmy. Praha: Computerpress, 2008.
OUALLINE, S. Practical C Programming. O´Reilly Media, 1997.
Sedgewick, J. Algoritmy v C, Praha : SoftPress, 2005.
VINE, M. C Programming for the Absolute Beginner. Course Technology PTR, 2007.
Wroblewski, S. Algoritmy, Datové struktury a programovací techniky. Brno: ComputerPress, 2004.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Compulsory study literature • GENTILE, M. An Easy Guide to Programming in C. Boston : CreateSpace, 2012. • GRIFFITHS, D. Head First C. O'Reilly Media, 2012. • HORTON, I. Beginning C. Apress, 2011. • VINE, M. C Programming for the Absolute Beginner. Course Technology PTR, 2007. Recommended literature: • GOOKIN, D. Beginning Programming with C For Dummies. John Wiley & Sons, Inc., 2013. • KERNIGHAN, B., W., RITCHIE, D., M. The C Programming Langueage. 1988. • KOCHAN, S., G. Programming in C. Addison-Wesley, 2014. • MILLER, D., PERRY, D. C Programming Absolute Beginner's Guide. Pearson Education, 2014. • OUALLINE, S. Practical C Programming. O´Reilly Media, 1997.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Sylabus -
Algoritmizace
Algoritmy a algoritmizace
Algoritmické konstrukce a struktury
Programování v jazyce C
Základy jazyka
Řídící struktury
Datové typy
Funkce
Ukazatele
Jednorozměrné pole
Textové řetězce
Práce se souborem
Vícerozměrná pole
Složené datové typy
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
• Overview of the C Programming Language • Variables, Data Types and Operators • Statement • Function • Pointer • Arrays (1 dimensional) • String • File Operation • Arrays (multi-dimensional)
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Studijní opory -
Pro podporu výuky bude využito VLE Moodle (virtuální vzdělávací prostředí), kde ke každému tématu budou studentům k dispozici studijní materiály, včetně rozšiřujících.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)
Support will be provided with the Moodle VLE (virtual learning environment), wherein study materials for each topic will be available to students.
Poslední úprava: Štípek Jiří, PhDr., Ph.D. (04.02.2018)