Poslední aktualita


  • 4. září 2008 (Čt) Informace o 16kčsf jsou následující:


    Odjezd : neděle 7. září, 16:05 Masaryčka
    Sraz : 15:30 na Masaryčce u pokladen

    Návrat : čtvrtek 11. září, vlak… zkráceno



Poskytovatelé podpory

logo-esf.jpg, 3 kB logo-cr.jpg, 3 kB logo-praha.jpg, 3 kB



Partneři projektu

logo-fjfi.jpg, 3 kB logo-gjs.jpg, 3 kB logo-gjs.jpg, 3 kB logo-gjs.jpg, 3 kB
 

Seznam úloh

k přednášce Informatika a výpočetní technika ve vědecké praxi

Pro úspěšné absolvování kurzu Informatika a výpočetní technika ve vědecké praxi musí každý účastník odevzdat vlastnoručně napsaný program v C/C++. Seznam možných témat je relativně obsáhlý, pokud si ovšem účastník vymyslí nějaké vlastní zajímavé téma odpovídající složitosti, budiž mu přáno.

Témata jsou seřazena dle obtížnosti. Jednoduchá témata zpracuje jeden účastník, středně složitá dva a složitá tři. Výběr témat bude proveden dne 9. 2. 2007. Bude-li někdo na této hodině nepřítomen, může si nějaké téma vzít i později prostřednictvím emailu (ale riskuje, že ta nejzajímavější budou již rozebrána :-) ). Úlohy musí účastníci odevzdat včetně zdrojového kódu do konce května 2007.

Jednoduché úlohy

  • Převody mezi libovolnými číselnými soustavami
    Uživatel zadá z klávesnice číslo v libovolné číselné soustavě (pro praktičnost max do 36tkové soustavy, kde je poslední symbol Z) a cílovou soustavu. Program musí číslo vypsat ve zvolené soustavě.
    Zpracuje : O. Polívka

  • Převod mezi římskou a desítkovou číselnou soustavou
    Program umožní uživateli převádět čísla mezi římskou a soudobou desítkovou soustavou tam a zpět.
    Zpracuje : G. Salajová

  • Problém dam na šachovnici
    Program najde všechna možná umístění n dam na šachovnici o rozměrech n x n tak aby se navzájem neohrožovaly. Toto je typická úloha na rekurzi - tj. volání funkce sama sebou.
    Zpracuje : Z. Švancara

  • Simulace šikmého vrhu pomocí diskretizace času
    Jedná se o simulaci základní mechanické úlohy pomocí diskretizace času. Popis diskretizace času je možno nalézt v dokumentu --- Under construction ---. Program provede simulaci šikmého vrhu s počátečními podmínkami zadanými uživatelem a závislost polohy H.B. na čase zapíše do souboru ve formě tabulky. Data pak mohou být zobrazena v programu Excel, gnuplot a podobných. Protože výpočet fyzikálního problému ležícího za touto úlohou je plně v možnostech středoškolské fyziky, účastník zároveň se simulací naprogramuje přímý výpočet a oba výsledky srovná.
    Zpracuje : P. Sedláček

  • Simulace problému dvou těles pomocí diskretizace času
    Jedná se o simulaci základní mechanické úlohy pomocí diskretizace času. Popis diskretizace času je možno nalézt v dokumentu --- Under construction ---. Program provede simulaci pohybu dvou gravitujících těles (planety, družice a pod) s počátečními podmínkami zadanými uživatelem a závislost polohy těles na čase zapíše do souboru ve formě tabulky. Data pak mohou být zobrazena v programu Excel, gnuplot a podobných.
    Zpracuje : J. Sýkora

  • Simulace Rutherfordova rozptylu pomocí diskretizace času
    Jedná se o simulaci základní mechanické úlohy pomocí diskretizace času. Popis diskretizace času je možno nalézt v dokumentu --- Under construction ---. Program provede simulaci rozptylu nabitých částic nalétávajících na pevný nabitý bod (částice alfa nalétávající na jádro zlata) pro širokou množinu srážkových parametrů (důkladnější popis v dokumentu --- Under construction ---). Závislosti polohy částic na čase zapíše do souboru ve formě tabulky. Data pak mohou být zobrazena v programu Excel, gnuplot a podobných.
    Zpracuje : 

  • Simulace pohybu nabité částice v magnetickém poli pomocí diskretizace času
    Jedná se o simulaci základní mechanické úlohy pomocí diskretizace času. Popis diskretizace času je možno nalézt v dokumentu --- Under construction ---. Program provede simulaci pohybu nabité částice v magnetickém poli, jehož siločáry jsou kolmé na vektor rychlosti částice. Pole však nemusí být homogenní, jeho indukce je dána funkcí závislou na x a y (důkladnější popis v dokumentu --- Under construction ---). Závislosti polohy částice na čase zapíše do souboru ve formě tabulky. Data pak mohou být zobrazena v programu Excel, gnuplot a podobných.
    Zpracuje : V. Schneider

  • Datové struktury - aplikace spojového seznamu
    Program umožní vytvořit, spravovat, zrušit a setřídit spojový seznam libovolných nespecifikovaných objektů. Toto je typická úloha na využití oběktově orientovaného programování, dědičnost a virtuální metody.
    Zpracuje :  A. Dominec

  • I/O operace - spojte seznamy jmen z více souborů do jednoho a setřiďte jej podle křestního jména nebo příjmení
    Program načte libovolné množství souborů obsahující jména a příjmení, spojí je do jednoho seznamu, dle přání úživatele seznam setřídí podle jména nebo příjmení a zapíše jej do jednoho výstupního souboru.
    Zpracuje : 

  • Matematické operace - numerický výpočet integrálu metodou prokládání obdélníků a metodou Monte Carlo
    Program spočítá určitý integrál (plochu uzavřenou mezi osou x a libovolnou spojitou funkcí) pomocí proložení funkce "schodištěm" a pomocí metody Monte Carlo (podrobnější popis úlohy v dokumnentu --- Under construction ---).
    Zpracuje : R. Marciňa

  • Matematické operace - generování všech permutací, kombinací a variací ze zadané množiny čísel
    Program podle uživatelem zadaných parametrů vypíše do souboru všechny permutace, kombinace nebo variace zadané číselné množiny.
    Zpracuje : M. Kovář

Středně složité úlohy

  • Generátor postav pro DrD/DrD+
    Program nabídne snadné a uživatelsky příjemné prostředí pro generování postav do hry Dračí doupě, respektive Dračí Doupě Plus v textovém módu (nebo i v grafickém, pokud se na to posluchač cítí). program musí obsahovat databázi všech ras, povolání, zbraní, vybavení a podobně. Musí umožňovat všechny režimi určování vlastností postavy a musí obsahovat jednoduchou databázi postav. Hotové postavy pak musí být použitelné pro soubojové výpočty (následující úloha) - předpokládá kooperaci programátorských týmů, které si musí dohodnout společný formát dat.
    Zpracují : H. Štulcová, K. Opatrná

  • Soubojové výpočty a generátor nestvůr pro DrD/DrD+
    Program umožní simulaci soubojů pro DrD resp. DrD+ s vytvořenými postavami z předchozí úlohy (vyžaduje kooperaci týmů - dohodu o společném formátu dat) a nestvůrami, které si pán jeskyně v programu "nahází" na základě bestiáře, taktéž v programu přítomném jako databáze. Program by měl zahrnovat všechny možné aspekty souboje, včetně iniciativy, pozice postav a nestvůr a podobně.
    Zpracují : 

  • Generátor postav pro D&D/AD&D+
    Program nabídne snadné a uživatelsky příjemné prostředí pro generování postav do hry Dungeons and Dragons, respektive Advanced Dungeons and Dragons v textovém módu (nebo i v grafickém, pokud se na to posluchač cítí). Program musí obsahovat databázi všech ras, povolání, zbraní, vybavení a podobně. Musí umožňovat všechny režimi určování vlastností postavy a musí obsahovat jednoduchou databázi postav. Hotové postavy pak musí být použitelné pro soubojové výpočty (následující úloha) - předpokládá kooperaci programátorských týmů, které si musí dohodnout společný formát dat.
    Zpracují : 

  • Soubojové výpočty a generátor nestvůr pro D&D/AD&D+
    Program umožní simulaci soubojů pro D&D resp. AD&D s vytvořenými postavami z předchozí úlohy (vyžaduje kooperaci týmů - dohodu o společném formátu dat) a nestvůrami, které si pán jeskyně v programu "nahází" na základě bestiáře, taktéž v programu přítomném jako databáze. Program by měl zahrnovat všechny možné aspekty souboje, včetně iniciativy, pozice postav a nestvůr a podobně.
    Zpracují : 

  • Vyhledání nejkratší cesty na silniční mapě
    Jako vstup do programu bude seznam měst a silnic mezi nimi, charakterizovaných vzdáleností v km. Program pak vyhledá nejkratší možnou trasu mezi dvěmi uživatelem zadanými městy a vypíše ji ve formě seznamu měst, kterými musí řidič projet.
    Zpracují : P. Marek, M. Pavlů

  • Jednoduchý kalkulátor
    Kalkulátor vyhodnotí libovolný výraz, např. ( sin( ( 3 + 2) - (2 - 3)^2 ) + cos( 3*pi - 2.7) ), a napíše výsledek. Výraz může obsahovat operace +,-,*,/, unární mínus, umocňování, odmocňování, všechny elementární funkce a základní konstanty typu pi, e a tak dále.
    Zpracují : J. Hofrichter, T. Přeučil

  • Práce s textem - jednoduchý editor
    Program umožní nahrát text ze souboru do paměti, jeho základní editaci a opětovné uložení. Kromě těch nejzákladnějších operací typu pohyb kurzoru, vložení a smazání znaku musí obsahovat také funkce pro blokové kopírování.
    Zpracují : J. Švancara, T. Peták

  • Hra "Tamagoči" v textovém režimu
    Pro vytvoření této hry musí posluchači samostatně dostudovat běh programu a ošetření vstupních událostí v reálném čase. Jedná se o klasické Tamagoči - co k tomu dodat. Potřebné funkce pro ovládání v reálném čase (např. kontrola, zda uživatel stiskl klávesu) se nachází v knihovně conio.h pro Windows (Borland C), nebo v knihovně ncurses.h (viz reference).
    Zpracují : 

  • Hra "Pacman" v textovém režimu
    Pro vytvoření této hry musí posluchači samostatně dostudovat běh programu a ošetření vstupních událostí v reálném čase. Jedná se o klasického Pacmana - malou žlutou kuličku pobíhající po bludišti, utíkající před duchy a požírající rozházené pamlsky. Potřebné funkce pro ovládání v reálném čase (např. kontrola, zda uživatel stiskl klávesu) se nachází v knihovně conio.h pro Windows (Borland C), nebo v knihovně ncurses.h (viz reference). Programování této úlohy zahrnuje vymyslet rozumnou umělou inteligenci duchů - tak, aby hraní nebylo ani příliš obtížné, ani příliš jednoduché.
    Zpracují : O. Kovář, J. Kubant

  • Hra "Formule" v textovém režimu
    Pro vytvoření této hry musí posluchači samostatně dostudovat běh programu a ošetření vstupních událostí v reálném čase. Jedná se o klasické formulky - na obrazovce je vykresleno autíčko, se kterým je možné pohybovat do všech směrů. Silnice plná překážek ubíhá kolem něj odshora dolů. Potřebné funkce pro ovládání v reálném čase (např. kontrola, zda uživatel stiskl klávesu) se nachází v knihovně conio.h pro Windows (Borland C), nebo v knihovně ncurses.h (viz reference).
    Zpracují : 

  • Hra "Space raiders" v textovém režimu
    Pro vytvoření této hry musí posluchači samostatně dostudovat běh programu a ošetření vstupních událostí v reálném čase. Jedná se o klasické střílení emzáků - vetřelic jsou srovnáni v několika řadách v horní části obrazovky, v dolní části se pohybuje vlevo a vpravo loď hráče. Emzáci střílí dolů, hráč nahoru a jeho úkol je postupně všechny protivníky zlikvidovat. Potřebné funkce pro ovládání v reálném čase (např. kontrola, zda uživatel stiskl klávesu) se nachází v knihovně conio.h pro Windows (Borland C), nebo v knihovně ncurses.h (viz reference).
    Zpracují : 

Složité úlohy

  • Hra "Přistání na měsící" v textovém režimu
    Pro vytvoření této hry musí posluchači samostatně dostudovat běh programu a ošetření vstupních událostí v reálném čase. Jedná se o klasické Přistání - Hráč má k dispozici loď s omezeným množstvím paliva, ovládání hlavní trysky a bočních trysek. Rozumným dávkováním paliva do motorů (a tedy velikosti tahu v daném směru) se snaží dosáhnout přistávací plochy tak, aby dosedl kolmo a s minimální rychlostí. Dosedne-li jinam nebo příliš rychle, loď rozbije. Paliva je ovšem velmi omezené množství a pokud jej hráš spotřebuje, loď se zřítí. Potřebné funkce pro ovládání v reálném čase (např. kontrola, zda uživatel stiskl klávesu) se nachází v knihovně conio.h pro Windows (Borland C), nebo v knihovně ncurses.h (viz reference). Kromě toho hra předpokládá reálnou simulaci fyzikálních dějů - tj. simulování zrychlených pohybů v homogenním gravitačním poli pomocí diskretizace času (viz --- Under construction ---).
    Zpracují : V. Humpál, A. Bělohlávek, J. Smrčina

  • Vektorová grafika - zobrazení scény v perspektivě a v kolmém promítání
    Program načte ze souboru seznam těles zadaných souřadnicemi jejich vrcholů v 3D prostoru a dle volby uživatele je vykreslí na obrazovku - tj. provede projekci do plochy. Zobrazování bude mít dva režimy - perspektivní a rovnoběžné promítání. Pro tuto úlohu je třeba, aby posluchači samostatně nastudovali grafický výstup (kreslení čar na obrazovku) pod Windows nebo linuxovým systémem X-window. Podrobnější údaje o matematice problému je možno najít v dokumentu --- Under construction ---. Tuto úlohu je vhodné řešit pomocí objektově orientovaného programování.
    Zpracují : M. Tejc, J. Dočkal, M. Labuť

  • Vektorová grafika - transformace scény
    Program načte vstupní data určená pro úlohu předchozí skupiny a provede transformaci celé scény, jako zmenšení, zvětšení, otočení, zrcadlení, různé deformace a podobně. Transformovanou scénu pak opět uloží ve formátu vhodném pro zobrazení programem předchozí skupiny (vyžaduje kooperaci - domluvu na společném formátu dat). Tuto úlohu je vhodné řešit pomocí objektově orientovaného programování.
    Zpracují : 

  • Program pro generovánní školních rozvrhů
    Program dle seznamu tříd, vyučovacích hodin, volných učeben a požadavků vyučujících na časy, které jim vyhovují, sestaví rozvrh pro celou školu. Aplikuje při tom definované optimalizační pravidla (např. co nejméně nultých hodin, pokud možno ne dva předměty ve stejný den, méně náročné předměty odpoledne, přestávku na obět ve smysluplném čase a ne pro všechny třídy najednou a pod). Neřešitelné konfliky oznámí. Výsledný rozvrh zapíše ve formě textových tabulek do souboru.
    Zpracují : 

  • Jednoduchý engine hry typu "Red Dragon" či "Melior Annis"
    Skupina posluchačů vymyslí hru typu Red Dragon, Melior Annis a pod. (včetně pravidel) a realizuje ji pro hraní více hráčů na jednom počítači (v textovém módu).
    Zpracují : 
copyright © 2006 Vladimír Pospíšil, webdesign Vojtěch Kusý