p°edchozφ lekce (1.17) | obsah kurzu | nßsledujφcφ lekce (1.19) |
JeÜt∞ d°φve, ne₧ zaΦneme psßt nov² program by jsme si m∞li ujasnit po₧adovanou
Φinnost programu. NejlΘpe tak, ₧e se seznßmφme nejprve s tφm, jakΘ v²sledky nßm mß
program poskytnout. Podle toho si musφme zadat poΦßteΦnφ podmφnky a vstupnφ hodnoty.
DalÜφm krokem by ji₧ m∞l b²t rozklad problΘmu tak, aby jsme si v blocφch definovali
Φinnost programu od poΦßteΦnφch hodnot a₧ k po₧adovan²m v²stupnφm hodnotßm.
Pokud nap°φklad zjistφme, ₧e musφme nejprve provΘst v²poΦet vstupnφch hodnot a potom
v²slednΘ hodnoty zobrazit, m∙₧eme ji₧ zaΦφt psßt kostru programu:
Jazyk KLONDAIK:
begin
vypocet;
zobrazeni;
end
Jazyk BONANZA:
Sub Main()
vypocet
zobrazeni
End Sub
Tφm mßme souΦasn∞ zadßny jmΘna procedur, kterΘ musφme naprogramovat.
Dßle ji₧ budeme provßd∞t postupn∞ rozklad dφlΦφch problΘm∙ na dalÜφ podproblΘmy. V
p°φpad∞ slo₧it²ch zadßnφ se m∙₧e dokonce stßt, ₧e nejsme schopni sestavit ihned
program pro vy°eÜenφ dφlΦφch problΘm∙, ale musφme znovu definovat rozklad problΘmu na
menÜφ souvisejφcφ posloupnΘ akce. Uveden²m zp∙sobem se sna₧φme rozlo₧it poΦßteΦnφ
zadßnφ problΘmu do postupn²ch krok∙, kterΘ dßle zjem≥ujeme. Na konci by jsme se m∞li
dostat do fßze, ₧e °eÜenφ ji₧ zapisujeme p°φmo v programovΘm jazyce. Soub∞₧n∞ s tφm
up°es≥ujeme po₧adovanß data a jejich ulo₧enφ v prom∞nn²ch definovanΘho typu.
V²Üe uvedenΘmu zp∙sobu °eÜenφ program∙ se °φkß metoda nßvrhu programu shora dol∙. To proto, ₧e od celkovΘho zadßnφ p°echßzφme postupn∞ k jednotliv²m dφlΦφm ·kol∙m, kterΘ nakonec zadßvßme v programovΘm jazyce.
Velmi d∙le₧itΘ je takΘ zaznamenßnφ postupu °eÜenφ ve form∞ poznßmek. Nynφ se vßm zdß vÜechno jasnΘ. Pokud se vÜak dostanete k programu po delÜφ dob∞, nemusφ vßm b²t ihned jasnΘ, proΦ jste postupovali uveden²m zp∙sobem. Zaznamenßvejte si proto maximum poznßmek k °eÜenφ problΘmu. Poznßmky mohou b²t v programu dvojφho druhu. Pokud uvedeme na zaΦßtku °ßdky dv∞ lomφtka za sebou, bude systΘm cel² °ßdek ignorovat a bude jej pova₧ovat za poznßmku. Takto je mo₧nΘ nap°φklad psßt delÜφ komentß°e, nebo p°i r∙zn²ch pokusech m∙₧eme zneplatnit cel² °ßdek programu, ani₧ by jsme jej museli vymazßvat.
Druhou mo₧nostφ zßpisu vlastnφho komentß°e do programu je pou₧itφ slo₧en²ch zßvorek. VÜe, co je v programu uvedeno mezi levou a pravou slo₧enou zßvorkou je pova₧ovßno za komentß° a je systΘmem ignorovßno. Tento druh poznßmek je v²hodnΘ pou₧φvat na konci °ßdku pro zßpis popisu provedenΘ Φinnosti °ßdku. Takto je mo₧nΘ oznaΦit jako poznßmku i text uprost°ed °ßdku, nebo n∞kolik °ßdk∙ najednou.
P°i zßpisu programu se sna₧te dodr₧ovat grafickou ·pravu programu, kdy jsou t∞la blok∙ odsazena od svΘho zßhlavφ o n∞kolik znak∙. Takov² program je potom i na prvnφ pohled lΘpe Φiteln² a snßze se hledajφ p°φpadnΘ chyby.
SystΘm nerozliÜuje v programu malß a velkß pφsmena. P°esto bude vhodnΘ, pokud budete dodr₧ovat jednotnou dßle popsanou ·pravu. JmΘna procedur a funkcφ p°ebφranß z knihoven systΘmu je vhodnΘ zapisovat tak, aby v₧dy prvnφ pφsmeno slova bylo velkΘ. Slo₧en²m slovem se rozumφ jmΘno slo₧enΘ z n∞kolika slov, mezi nimi₧ nesmφ b²t mezera. Nap°φklad ImageInit, ConsoleClear apod. Stejn²m zp∙sobem je vhodnΘ pojmenovat vlastnφ vφceznakovß jmΘna deklarovan²ch prom∞nn²ch.
p°edchozφ lekce (1.17) | obsah kurzu | nßsledujφcφ lekce (1.19) |