Obsahy jednotlivých cvičení HOME

Cvičení z Programování 1 [NPRG030]

Cvičení z Programování 1 [NPRG030]


Obecné informace (2023/2024)

Obecné informace (2023/2024)

Místo a čas
  • Přednáška
    • Dr. T. Holan v úterý od 10:40, [obsah]
    • Dr. M. Pergler ve středu od 14:00, [obsah]
  • Cvičení
    • L. Kyjánek v úterý 14:00-15:30 v učebně N8
    • je podmínkou zapsat si v souvislém tříhodinovém bloku s cvičením T. Bílého (Algoritmizace)

ReCodEx
  • web: https://recodex.mff.cuni.cz/
  • systém pro odevzdání úkolů a zápočtového testu
  • [příručka pro nové uživatele] vysvětluje, jak získat vlastní účet; studenti MFF se přihlašují pomocí CAS
  • [příručka pro studenty] vysvětluje práci s ReCodExem
  • ReCodEx umí být záludný, hlavně co se týká kontroly správnosti odevzdávaných řešení; v případě potíží se obraťte na mě a společně případné problémy vyřešíme

Zápočet
  • PRŮBĚŽNÉ ÚLOHY
    • každý týden 1-3 úlohy v ReCodExu; celkem 100 bodů, pro splnění stačí 80 (budou i bonusové úlohy)
    • při vypracování do 7 dní dostanete maximální počet bodů, při vypracování do 14 dní dostanete nanejvýše polovinu z maximálního počtu bodů
  • ZÁPOČTOVÝ TEST
    • na konci semestru programovací test (budou mu věnována poslední 2 cvičení)
    • 1. pokus (19.12.2023), 2. pokus (09.01.2024), 3. pokus (individuální domluva)
    • zadán bude v ReCodExu, vypracovávat ho ale budete osobně v učebně
  • ZÁPOČTOVÝ PROGRAM
    • Zadání (do 19.12.2023)
      • samostatně vytvořený funkční program (větší než jsou průběžně zadávané úkoly), včetně dokumentace
      • zadání si vytváříte sami, může se jednat o cokoli, ale musíte ho se mnou předem dohodnout (písemně)
      • pošlete mi (např. v e-mailu) stručný popis toho, co chcete dělat; zadání schválím, nebo ho společně doladíme
      • pokud máte jen vágní nápad, také mi napište a něco vymyslíme; pokud nemáte žádný nápad, můžete se inspirovat v seznamech od kolegů, např. [T. Holan] nebo [R. Rosa] nebo [M. Mareš] (často jsou to spíše návrhy na bakalářské/diplomkové projekty, tak se nezalekněte rozsahu a komplexnosti)
    • Tvorba (v průběhu semestru)
      • v kódu můžete použít libovolné knihovny, ale v odevzdávaném programu musí být vidět váš vklad
      • neodkládejte práci; zkušenost ukazuje, že když si myslíte, že to budete mít za týden, potrvá to spíš měsíc
      • dbejte na strukturovanost, přehlednost a funkčnost v kódu i dokumentaci
      • pokud to dává smysl, přiložte také testovací vstupní data
      • jako dokumentaci sepište stručný doprovodný dokument (.pdf; nezávazné tipy naleznete [zde]), ve kterém uvedete:
        • úvod - zadání/cíl řešené úlohy
        • vypracování - očekávané vstupy, výstupy; popis základního ovládání programu; popis principu řešení, použitých datových struktur, příp. algoritmů
        • závěr - vlastní hodnocení (co se vám povedlo, co ještě potřebuje péči, jak lze program rozšířit)
    • Odevzdání (do 29.02.2024 odevzdat kód, prezentace může proběhnout později)
      • odevzdání proběhne formou osobníprezentace ať už v prostorách MFF, nebo online
      • předem mi e-mailem pošlete svůj zápočtový program vč. dokumentace; společně se domluvíme na termínu setkání
      • nepřipravujte žádnou prezentaci, pouze mi ukážete, jak program funguje a jak je naprogramovaný
      • rozhodně můžete odevzdávat a prezentovat program dříve než je uvedené datum

Komunikace a konzultace
  • dejte vědět kdykoli budete potřebovat s něčím poradit nebo pomoct, např.: mám nefunkční kus kódu, nerozuměl jsem něčemu na cvičení, mám dotaz, nerozumím zadání úkolu, potřebuji poradit s řešením zadaného úkolu atd.

  • e-mail: kyjanek@ufal.mff.cuni.cz (do předmětu: NPRG030)
  • pravidlně budu k dispozici bezprostředně po cvičeních
  • podle vašich možností/preferencí si můžeme domluvit také osobní/online setkání
Další zdroje informací
Dr. M. Mareš vede Cvičení z Programování 1 a Algoritmizace pro pokročilé. Lze si zapsat, nebo navštěvovat ze zájmu. Cvičení NPRG030 se koná ve čtvrtek od 15:40 v učebně N7.


Užitečné návody (mimo náplň kurzu Programování)
  • Linuxový terminál pro Windows
  • Vzdálený přístup do MFF sítě pro čtení, zápis, spouštění souborů
    • provádí se pomocí příkazu ssh
    • v terminálu se přihlašujete pomocí příkazu: ssh [cas jmeno]@u-pl[1-25].ms.mff.cuni.cz
    • uvedené číslo pracovní stanice [1-25] můžete zvolit libovolně; na MFF počítačích je Unix (pozor na dir vs. ls atd.)
  • Vzdálený přístup do MFF sítě pro stahování/nahrávání souborů do/z vlastního počítače
    • provádí se pomocí příkazu sftp
    • v terminálu se přihlašujete pomocí příkazu: sftp [cas jmeno]@u-pl[1-25].ms.mff.cuni.cz
    • hlavním účelem je, abyste stáhli/nahráli požadovaný soubor; pomocí následujících příkazů:
      • put [umístění souboru v lokalním pc] [cílové umístění na vzdáleném pc]
        slouží k nahrání souboru z lokálního počítače na vzdálený počítač
      • get [umístění souboru na vzdaleném pc] [cílové umístění na lokálním pc]
        slouží ke stažení souboru ze vzdáleného počítače do lokálního počítače
      • (umístění v lokálním počítači se bere z adresáře, ze kterého se volal příkaz sftp; pro umístění přímo do adresáře, ze kterého se příkaz volal, stačí místo cesty zadat tečku)

4. cvičení (24.10.2023)

4. cvičení (24.10.2023)


3. cvičení (17.10.2023)

3. cvičení (17.10.2023)


2. cvičení (10.10.2023)

2. cvičení (10.10.2023)


1. cvičení (03.10.2023)

1. cvičení (03.10.2023)