This lecture is a basic course of computer programming for students that have never programmed, or have only little experience with computer programming. It can be considered a loose course of the C programming language with many examples, description of number representations, standard library and programming tools (e. g., make, profiler, debugger).
Last update: doc. RNDr. Filip Uhlík, Ph.D. (05.04.2016)
Tato přednáška slouží jako základní kurz programování pro studenty, kteří nikdy neprogramovali nebo programovali jen málo. Přednáška vysvětluje základní pojmy architektury počítačů, jejich technická omezení a způsoby jejich programování, poziční notaci čísel a jejich reprezentaci v počítači, vysvětluje rozdíl mezi algoritmem a programem a detailně popisuje způsob zápisu programů v programovacím jazyce C, jejich ladění a další programátorské techniky. Přednáška se prolíná se cvičením a vede studenty k procvičování přednesených principů v praktických úlohách od nejjednodušších (výpočet faktoriálu, Fibonacciho posloupnosti, kombinačních čísel, mocnin, ...) přes jednoduché (test prvočíselnosti, Eratosthenovo síto, Pascalův trojúhelník, ...) až po netriviální úlohy (třídění, problém osmi dam na šachovnici, hledání optimálního mocnění, skládání Rubikovy kostky, ...).
V případě, že se předmět nevyučuje, neváhejte a zapište si Programování pro informatiky na MFF.
Po negativních zkušenostech s allokováním fakultních počítačových učeben bude praktická část probíhat na vlastních noteboocích v normální posluchárně.
Literature -
Last update: doc. RNDr. Filip Uhlík, Ph.D. (07.06.2019)
B. W. Kernighan, D. M. Ritchie: The C Programming Language, Second edition, Prentice Hall, 1988.
Last update: ZUSKOVA (29.01.2003)
B. W. Kernighan, D. M. Ritchie: The C Programming Language, Second edition, Prentice Hall, 1988.
Requirements to the exam -
Last update: doc. RNDr. Filip Uhlík, Ph.D. (15.10.2020)
Exam consists in two parts, a written one when student creates a program for an agreed problem and an oral one when students defends its correctness and eventual changes. If necessary, the couse and the exam will have a distant form.
Last update: doc. RNDr. Filip Uhlík, Ph.D. (15.10.2020)
Zkouška se skládá z písemné části, kdy student napíše program řešící dohodnutou úlohu a ústní části, kdy se zkoušejícím řeší jeho správnost a případné úpravy. Bude-li to nutné, budou kurz a zkouška distační.
Syllabus -
Last update: doc. RNDr. Filip Uhlík, Ph.D. (07.06.2019)
Algorithms and programs
Number types and number representations
Constants and variables
Operators and expressions
if, while, for, do
Arrays
Functions
break, continue, switch, goto
Structures, unions and definitions of types
Pointers
Recursion
Input/Output
Programing tools
Last update: doc. RNDr. Filip Uhlík, Ph.D. (07.06.2019)