Algoritmo stilius ir kultūra

Uždavinio sprendimo užrašymas, stengiantis išreikšti jį kuo aiškiau bei vaizdžiau, vadinamas algoritmavimo stilium . Neretai greta algoritmavimo stiliaus vartojama programavimo stiliaus sąvoka. Pastarasis šiek tiek labiau susijęs su programų atlikimu kompiuteriu. Algoritmavimo stiliaus sąvoka labiau skiriama teoriniam sprendimo metodui nusakyti.Algoritmavimo stilius gali būti tobulinamas dviem būdais:1. Skaitant bei nagrinėjant kitų parašytus gerus algoritmus.2. Pačiam sudarant kuo daugiau algoritmų.

Algoritmavimo kultūra suprantama kiek plačiau; ji aprėpia ne tik algoritmavimo stilių, bet ir algoritmo teksto išdėstymą, komentarų rašymą. Keli patarimai kaip pagerinti algoritmavimo kultūrą:1. Algoritmas turi gerai tikti duotam uždaviniui spręsti: reikia tinkamai parinkti duomenų tipus bei valdymo struktūras.2. Algoritmas turi būti vaizdus, lakoniškas, veiksmai turi logiškai sekti vienas po kito. Neturi būti nereikalingų, perteklinių veiksmų.3. Algoritmas turi būti racionalus, t.y. trumpiausiu keliu sprendžiantis duotą uždavinį.4. Algoritmas turi būti ekonomiškas, t.y taupantis kompiuterio laiką bei atmintinės vietą duomenims saugoti.5. Visi algoritme vartojami vardai turėtų būti prasmingi, raiškiai nusakantys jais reiškiamus objektus. Pageidautina aprašant vardus juos iškarto komentuoti.6. Algoritmo tekstas turi būti vaizdžiai pateiktas ir lengvai suvokiamas .7. Sudėtingas algoritmo teksto vietas reikia komentuoti .

Rašant kiekvieną algoritmo sakinį, reikia jį vertinti iš dvejopų pozicijų:1. ar užrašyta konstrukcija racionali t.y. ar jos neįmanoma daugiau supaprastinti; 2. ar šis užrašas bus vaizdus, aiškus skaitančiam algoritmą .

Algoritmo teksto išdėstymasprogram . . . var . . . begin . . . read . . . if . . . then . . . else . . . while . . . do begin . . . end; for . . . to . . . do begin . . . end; writeln . . .end .

Pvz.: Trijų skaičių aritmetinis vidurkis.

program Vidurkis;var a, b, c: integer; {duoti skaičiai} vid: real; {skaičiaus vidurkis} begin read (a, b, c);

vid := (a + b + c) / 3; {Apskaičiuoja vidurkį} writeln (vid:7:1)end.