PředmětyPředměty(verze: 804)
Předmět, akademický rok 2017/2018
   Přihlásit přes CAS
Programování pro fyziky - NOFY056
Anglický název: Programming for Physicists
Zajišťuje: Kabinet výuky obecné fyziky (32-KVOF)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2016
Semestr: zimní
E-Kredity: 5
Rozsah, examinace: zimní s.:2/2 Z+Zk [hodiny/týden]
Počet míst: neomezen
Minimální obsazenost: neomezen
Stav předmětu: vyučován
Jazyk výuky: čeština
Způsob výuky: prezenční
Garant: RNDr. Ladislav Hanyk, Ph.D.
Mgr. Tomáš Ledvinka, Ph.D.
Ve slož. prerekvizitě: NPRG041
Anotace -
Poslední úprava: T_UTF (16.05.2003)

Jednosemestrální základní kurs programování pro studenty 1. ročníku bakalářského studia fyziky. Studenti se na příkladech naučí řešit vybrané jednoduché problémy za použití dostupné implementace jazyka Pascal. Podmínkou pro zápočet je odevzdání zápočtové práce.
Cíl předmětu -
Poslední úprava: HANYK/MFF.CUNI.CZ (12.04.2008)

Student schopný vyjádřit myšlenku pomocí programovacího jazyka (např. Pascal, C, Fortran).

Literatura -
Poslední úprava: RNDr. Ladislav Hanyk, Ph.D. (29.09.2011)

Poznámky k přednáškám:

  • http://utf.troja.mff.cuni.cz/~ledvinka
  • http://geo.mff.cuni.cz/~lh/NOFY056

a dále

  • N. Wirth: Algoritmy a datové struktury, Alfa, Bratislava 1988
  • J. Drózd, R. Kryl: Začínáme s programováním, Grada, Praha 1992
  • P. Töpfer: Základy programování v úlohách, Scientia, Praha 1997
  • P. Töpfer, D. Töpferová: Programování - Sbírka úloh, Fortuna, Praha 1998
  • P. Satrapa: Pascal pro zelenáče, Neokortex, Praha 2000
  • Příručky pro Turbo Pascal, Borland Pascal a Delphi, 1990-2003
Metody výuky -
Poslední úprava: HANYK/MFF.CUNI.CZ (12.04.2008)

Přednáška + praktická cvičení

Sylabus -
Poslední úprava: HANYK/MFF.CUNI.CZ (12.04.2008)

1. Problémy
Klasické elementární algoritmy (Eukleidův algoritmus, Eratosthenovo síto). Matematické výrazy (Hornerovo schema, chyby), příklady výpočtu a aproximace funkcí. Základní numerické algoritmy (hledání kořenů, kvadratura). Práce s poli, vybrané algoritmy lineární algebry. Složitost algoritmu. Vyhledávání a (vnitřní) třídění, asociativní pole. Fronta a zásobník. Vstup a výstup dat. Nástin 2D grafiky (gnuplot, postscript). Náhodná čísla. Modularita, příklady použití použití knihoven procedur a objektů.

2. Jazyk Pascal
Proměnné (a konstanty). Celočíselné typy, char, boolean, reálné typy. Výraz, operátory, priorita, standardní funkce. Přiřazení, vstup a výstup. Jednoduchý a složený příkaz. Podmínky, cykly. Program, procedura a funkce. Lokalita. Předávání parametrů hodnotou a odkazem, konstantní parametry. Strukturovaná data (pole, záznam, řetězce). Inicializované proměnné. Binární operace a zkrácené vyhodnocování logických výrazů. Textový vstup a výstup. Typované soubory. Parametr (a proměnná) typu procedura a fuknce. Modularita (unit), práce s dokumentací knihoven. Dynamické datové struktury, ukazatele. Objekty.

3. Základy práce s osobním počítačem
Programy a data. Standardní vstup a výstup, přesměrování, skripty. Základní nástroje.

Cvičení:
Studenti se na cvičeních detailně seznamují s vybranými algoritmy a průběžně vylepšují techniku konstrukce kódu. Podmínkou pro zápočet je odevzdání zápočtové práce.

 
Univerzita Karlova | Informační systém UK