Portál AbcLinuxu, 26. dubna 2024 13:00

Recenze: Učebnice programování z minulosti

2.2.2006 18:35 | Přečteno: 2411× | poslední úprava: 2.2.2006 18:46

Zkoušeli jste někdy sednout do stroje času? Pokud ne, ráda vás pozvu na jednu takovou jízdu. Držte si klobouky, pojedeme z kopce!

Nejprve stručně na úvod, abych předešla otázkám: Fortran jsem se začala učit kvůli jednomu absurdnímu bugu v octave (nakonec to bylo gcc, ale to je jedno). Následující knihu jsem při té příležitosti našla doma v knihovničce, ale jak se tam dostala, to je mi záhadou. Asi nějaká drobná odchylka v časoprostoru...

Kniha Programming for a digital computer in the FORTRAN language je určena především studentům matematiky a vychází z kurzů, které autor (profesor Herbert S. Wilf) vedl na University of Pennsylvania. Přestože je poměrně útlá, obsahuje všechny informace, které potřebuje student k tomu, aby mohl pomocí počítače řešit své matematické problémy. Kromě syntaxe jazyka samotného se věnuje také algoritmům. Nezapomíná ani na praktickou stránku věci, čtenář se dozví vše potřebné i o vstupních a výstupních zařízeních počítače.

První kapitola se věnuje programovacím jazykům jako takovým. Prezentuje jejich (dosud krátkou) historii a popisuje trnitou cestu od strojového kódu až k moderním jazykům jako FORTRAN, ALGOL, COBOL nebo BASIC. Vysvětluje, k čemu se který jazyk nejlépe hodí. Samozřejmě se zde také dozvíte, proč právě FORTRAN - kompilátory tohoto jazyka jsou totiž dostupné téměř na všech univerzitních počítačích. Ale nepředbíhejme událostem: nejprve je třeba se naučit, co je to kompilátor. Podíváte se tady i na svůj první jednoduchý program, který spočítá průměr z 850 čísel. (Stroj času nás přenesl ještě před počátky Helloworld tradice.) A samozřejmě se vám dostane vhledu do programátorského uvažování: naučíte se, jak strukturovat své myšlení. Druhá a třetí kapitola potom váš nový způsob uvažování ještě prohloubí: budete řešit jednoduché matematické úlohy a jednotlivé kroky zapisovat v přirozeném jazyce. Autor vás přitom nenásilně zasvětí do prvních příkazů Fortranu: příklady, které zvolil, lze totiž přepsat z angličtiny do Fortranu bez větších komplikací. Začnete mít pocit, že programování je nádherně jednoduché. A naučíte se malovat vývojové diagramy.

Čtvrtá kapitola váš optimismus trochu umenší. Programovat je sice snadné, ale krmit svým programem počítač je neskutečná otrava. Pokud se touto kapitolou prokoušete, stanete se mistry v ovládání děrovačky štítků IBM 029. Může vás potěšit, že si vystačíte s poměrně malým množstvím znaků. Musíte být pečliví a opatrní, nic dalšího v tom není. Co řádek, to štítek... blahoslavená doba, v které studenti neřešili, který je nejlepší textový editor.

V následujících kapitolách už se ponoříte do jazyka samotného. Dozvíte se něco o datových typech. (Možná je to trochu nadnesené pojmenování: pokud nejvýše šestipísmenný název proměnné začíná písmeny I až N, bude povinně uchovávat integer, ostatní proměnné budou uchovávat float. Přetypování se řeším intuitivním způsobem: přejmenováním proměnné.) Do repertoáru vašich znalostí přibude práce s poli, podmínkami, cyklem (obdoba dnešního for cyklu se jmenuje DO, ostatní cykly ale hravě vyrobíte pomocí IF a GOTO) a samozřejmě široká škála matematických funkcí. Tyto znalosti budete aplikovat a po shlédnutí všech příkladů se pustíte do zajímavých cvičení, která vás čekají na konci každé kapitoly. Po prostudování všech jedenácti kapitol byste měli být schopní samostatně vyřešit libovolnou numerickou úlohu, s kterou se během studia setkáte.

Drobný bonbónek na ukázku: Následující prográmek by měl spočítat průměr ze všech zadaných čísel. Tato čísla se nacházejí v poli A(1), A(2), .... A(N). Najděte v programu chybu. (Šetřte naše lesy.)

      DIMENSION A(100)
      SUM = 0
      DO 20 J = 1,N
20    SUM = SUM + A(J)
      AVG = SUM/N
      PRINT, AVG
      STOP
      END

A samozřejmě kvízová otázka: Hádejte, v kterém roce kniha vyšla? (Pokud zkusíte hádat bez použití Googlu, bude kvíz samozřejmě zábavnější.)

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

2.2.2006 18:40 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin
blahoslavená doba, v které studenti neřešili, který je nejlepší textový editor

Mělo to ovšem i své stinné stránky, u flashdisku obvykle nehrozí, že člověk přijde o několik hodin práce, protože cestou od mechaniky k počítači zakopne na schodech… :-)

A samozřejmě kvízová otázka: Hádejte, v kterém roce kniha vyšla?

1965?

2.2.2006 18:45 anicka | blog: ze_zivota
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
člověk přijde o několik hodin práce, protože cestou od mechaniky k počítači zakopne na schodech

Nádherná představa, díky za ni .o) až zas budu leštit nečitelné CD rukávem, budu si to představovat a hned mi bude líp .o))

1965?

Přihořívá, maličko mladší.

^D
2.2.2006 18:53 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
To není představa, to je krutá realita. Naštěstí ne moje, ale (ne zase o tolik) starších kamarádů*. Já přišel na matfyz až v roce 1992, to už byla v Karlíně (byť novotou zářící) novellová učebna připojená na Internet…

* - údajně to bylo o to pikantnější, že děrovačka byla na Malé Straně v přízemí, zatímco místnost, kde se úlohy dávaly ke zpracování, samozřejmě ve čtvrtém patře

2.2.2006 18:55 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Já bych přihodil řekněme sedm let :-) Možná bych se nebál i víc, v mých očích začíná středověk dost nedávno ;-)
Copak toho není dost?
2.2.2006 18:57 anicka | blog: ze_zivota
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
ubrat .o)
^D
2.2.2006 18:58 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Hm, no jo no. Dělá mi problém i představa, že před rokem 1985 mohl na této planetě existovat život, pak po mně chtějte hádat takové věci :-)
Copak toho není dost?
2.2.2006 18:59 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Existoval. Nejméně jedenáct let… :-)
Dalibor Smolík avatar 2.2.2006 19:00 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Kdepak, třicet.
Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
3.2.2006 06:38 mrzout | skóre: 11 | blog: mrzutej
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
inteligentni? :)
Hlasuj pro zavedení OpenID na Abclinuxu!
3.2.2006 08:17 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Esli tam píšou "FORTRAN language", bude to možná z doby před první standardizací nebo kolem ní...68?
Dalibor Smolík avatar 2.2.2006 18:56 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin
Nevím, ze kterého roku je tahle učebnice, to bych hádal. Ale já mám doma učebnici Fortranu od Vogela z roku 1976.
Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
2.2.2006 18:58 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
To bych viděl jako horní hranici, protože Fortran 77 už byl přeci jen o něco civilizovanější a taky by tam už asi byla nějaká zmínka o céčku.
2.2.2006 22:38 springer | skóre: 10 | blog: engineering
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Olehla,Tiser - Prakticke pouziti Fortranu - 1975
kralovna Alzbeta a Stallmanuv holic diskutuji free software
2.2.2006 19:22 Martin Tůma | skóre: 39 | blog: RTFM | Praha
Rozbalit Rozbalit vše Chyba
Odpovědět | Sbalit | Link | Blokovat | Admin

Přestože jsem fortran použil jenom jako jakýsi příklad u zkoušky z programovacích jazyků (a možná proto, že jsem na zkoušejícího mluvil tímto zapomenutým jazykem jsem nakonec odešel s "Výborně" ;-) ), tak si troufám tvrdit, že instrukce STOP by měla být před AVG = SUM/N. Jsou naše lesy zachráněny?

Každý má právo na můj názor!
2.2.2006 20:09 Martin Baleja | skóre: 13 | blog: Segmentation_Fault
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin
Chyba v programu - neni definovano N. (hadam, ted se podivam na ostatni komentare). A druha otazka - kniha vysla v roce 1968. (taky hadam).
Why are hemorrhoids called "hemorrhoids" instead of "assteroids"?
2.2.2006 20:31 anicka | blog: ze_zivota
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
ja jsem teda reseni taky nevidela, ale problem vidim v necem zcela jinem. Akorat koukam, ze jsem zapomnela uvest, ze / je celociselne deleni. Tak schvalne...
^D
2.2.2006 21:13 janosh | skóre: 8 | blog: janosh_blog | Třebíč
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
že by dělení nulou?
Linux is like teepee, no windows, no gates, apache inside!
2.2.2006 21:45 zabak
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
V tom pripade
AVG = SUM/(N*1.0)
pripadne
P=N
AVG = SUM/P
2.2.2006 23:37 0
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
To je zbytecny, defaultne se to prevadi na slozitejsi typ. print *,n nebo radeji spis write(*,*) n.
vencour avatar 2.2.2006 21:54 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin

Mam pocit, že šedesátá jsou léta Fortranu, pak přišlo postupně C, Ada a tak?

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
2.2.2006 23:26 vend | skóre: 19
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin

Ach, srdce mi zaplesalo. Mé mládí se vrací. Marná sláva, Fortran je jediný jazyk pro opravdového programátora :-)

Ten program mi přijde v pořádku, až na to, že tam není pořádná deklarace (je třeba uvést typ pole) a ostatní proměné deklarovat, ikdyž některé verze skutečně měly nějáké to defaultní nastavení.Není tam žadné načtení dat, u print není číslo vystupního zařízení a label příkazu format

Při delení typu real typem integer se provede automatická konverze a výsledek bude real, ne?

Jinak zlaté štítky! Já psal na děrnou pásku a při jediném zkaženém písmenu to znamenalo znova kopírovat celou pásku,což tomu dálnopisu trvalo zoufale dlouho. A kdýž byla páska delky třeba osm metrů...

3.2.2006 03:52 trekker.dk | skóre: 72
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Správný programátor programuje ve Fortranu v jakémkoliv jazyce ;-)
Quando omni flunkus moritati
27.2.2006 22:33 Kero | skóre: 2
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Příběh opravdového programátora Mela.

http://www.cs.utah.edu/~elb/folklore/mel.html
Jsem odpůrcem GPL, ale ne odpůrce svobodného softwaru. Jen software pod MIT licencí je opravdu svobodný.
3.2.2006 13:55 Ferda
Rozbalit Rozbalit vše Re: Recenze: Ucebnice programovani z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin
Fortran ze je mrtvej? Zkus si na klicove slovo fortran grep-nout defaultni profily v Gentoo, a budes prekvapena ze vyvojari gentoo povazuji prikaz USE="$USE fortran" za "sane defaults" :] :] :]
3.2.2006 23:35 Georgeek | skóre: 4
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin

Fortran navždy

Algol jak ten list, co snesl chlad,
čas neudělal mu líp, buď chlap.

Prolog kabrňák,
logika mu jde.
Příště však, jak jinak,
jak japonský vlak, jmenovat se bude.

Cobol nebo Lisp,
extrémy bez hranic.

Visual - Q - JV Basic navíc,
netušíš, co chtěl jsem nejvíc.

Ada také, žádná sláva,
miluje ji armáda.

C# za nic,
C plus cením víc,
ale Fortran - bez hranic,

Jsem Tvůj anděl, GOTO pošeptej.
Vítej v říši kouzel. Okna nehledej.




Georgeek
14.2.2006 10:05 Gustav | skóre: 23 | blog: Gustav I
Rozbalit Rozbalit vše Re: Recenze: Učebnice programování z minulosti
Odpovědět | Sbalit | Link | Blokovat | Admin
Opravdoví programátoři. Straré, ale pořád vtipné.

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.