Předmět Počítače a programování

 

Tento předmět jsem absolvoval až v posledním ročníku mého elektrotechnického studia, tj. ve školním roce 1968/69. Byl rozdělený na část přednášky v zimním semestru (tj. podzim 68) ukončené zkouškou, a na část cvičení v letním semestru (tj. jaro 69) ukončené klasifikovaným zápočtem (což byla v té době dovedně maskovaná zkouška, aby jich studenti v daném semestru neměli moc ;-).

         Přednášky měl významný odborník S.Kořínek, ale nezanechaly v mé paměti příliš výrazný odraz. Psaný záznam přednášek jsem neztratil, čili jejich obsah je možné poměrně přesně rekonstruovat [ref_fyz].  Učili jsme se zejména jazyk Algol 60 (ale „nasucho“, bez praxe, takže efekt nebyl příliš velký). Už si nepamatuji, jak pak mohla probíhat zkouška, ale dostal jsem jedničku (nepamatuji se na to, ale mám ji zapsanou v indexu ;-).

         Mnohem větší dojem na mne zanechala cvičení, která vedli rukou společnou a nerozdílnou výrazné osobnosti K.Ježek a J.Bokr. Každý student řešil (celý semestr) jednu individuálně zadanou úlohu. Úloha spočívala v získání řešení diferenciální rovnice druhého řádu s jednou zadanou nelinearitou. Řešení bylo třeba provést jednak numericky (prog. jazyk Algol 60) a dále analogově (analogový počítač Meda, snímek sestavy Medy z pozdější laboratoře F.Tůmy viz [ meda_sestava.jpg ]).  Výsledky se měly porovnat (v ideálním případě měly být stejné ;-). Na cvičení chodil celý kroužek, což bylo reálně asi tak 10 – 12 lidí.

         Cvičící K.Ježek hned na začátku semestru zběžně překontroloval (rukou napsaný ;-) program. Program nebyl moc složitý, protože k vlastnímu numerickému řešení diferenciální rovnice se používala knihovní funkce.  Program se pak postoupil (v obálce s vyplněnou průvodkou) k děrování do papírové pásky a k následnému výpočtu na výpočetní  středisko VŠSE. Tam se zpracoval  na počítači Odra 1204, obrátka (již na pásce vyděrovaného programu) byla cca dva až tři dni. Student pak mohl nalézt (vlastní iniciativou) v obálce ve škatuli před výpočetním střediskem obtisk poslední verze svého programu, děrnou pásku a většinou poměrně nesrozumitelný výpis syntaktických chyb, které nalezl překladač. Také tam mohly být výsledky (ale to se většině mých kolegů nepodařilo, ti nejúspěšnější nalezli hlášku ve stylu run-time err adr ABCD ;-).  Reálná obrátka programu tak ve skutečnosti byla cca 1 týden, protože až na příštím cvičení mohl cvičící se studentem luštit ohlášené chyby a navrhnout opravy. 

         Cvičící J.Bokr měl na starosti analogovou část řešení. Na začátku semestru zběžně zkontroloval studentem vyrobené schema zapojení bloků analogového počítače a v průběhu semestru pak fungoval jako operátor analogového počítače, tj. jediné Medy, která byla pro cvičení k dispozici. Postupně vyřizoval studenty, kteří si mysleli, že mají správné schema. Uměl bleskurychle nastavit požadované hodnoty potenciometrů na vstupu integrátorů a body zlomu ve funkcích nelinearit. Při spuštění výpočtu ale nejčastěji za chvíli nějaké napětí přešplhalo strojovou jedničku 10 Voltů, což znamenalo špatnou normalizaci, student dostal vynadáno a nastoupil další.

         Nevzpomínám si už, zda jsem měl nějaké potíže s analogovým řešením, ale nějaké přibližně rozumné jsem dostal dost brzy. Zato číslicové řešení prováděné výše uvedeným postupem nějak nekonvergovalo, ale pomohlo mi trochu štěstí. Smutně jsem postával před výpočetním střediskem a luštil tam run-time výpisy, matně si vzpomínám, že to bylo něco jako „stack overflow“. Takto mne zastihl pracovník výpočetního střediska a můj pozdější kolega a přítel Václav Bohm, kterému se mne zželelo, program se mnou na místě prošel a opravil.  Moje analogové a číslicové řešení  ani potom nebylo zdaleka shodné, ale při troše dobré vůle šla vytušit jistá podobnost obou  křivek. Takže nakonec jsem dostal z klasifikovaného zápočtu jedničku, mám ji v indexu od J.Bokra. Ale myslím, že i moji kolegové z kroužku uspěli, pokud se jim podařilo dostat alespoň jednu jakž-takž vypadající křivku.  

 

St.R. , únor 2016