1. Programa | ||
Kad kompiuteris atliktų kokį nors darbą, turi būti sukurta tai gebanti atlikti programa. Šiuolaikinę programinę įrangą rengia ištisi programuotojų kolektyvai. Mes mokysimės kurti tik labai nedideles programėles (bet ir tam reikės nemažų protinių pastangų), kurios padėtų suprasti programavimo konstrukcijas ir lavintų algoritminį mąstymą. E-vadovėlyje teorinės medžiagos yra nedaug. Norintiems išmokti plačiau ir giliau rekomenduojame pasinaudoti G. Grigo programavimo vadovėliu "Programavimas Paskaliu". Programos atlieka veiksmus su duomenimis, kurie skirstomi į pradinius, rezultatus, tarpinius. Pvz. sprendžiant kvadratinę lygtį, lygties koeficientai a, b, c yra pradiniai duomenys, ieškomi sprendiniai x1 ir x2 yra rezultatai, o diskriminantas D yra tarpinis duomuo. Išnagrinėsime programą, kuri skaičiuoja skaičių nuo 1 iki n sumą. Programos teksto išdėstymas labai svarbus, norint rašyti tvarkingas, lengviau suprantamas, lengviau tobulinamas programas. Galima rašyti komentarus, juos išskiriant riestiniais skliaustais. Pvz. 1.1
program suma; {programos antraštė, suma yra programos vardas}
var n, sum, i : integer; {kintamųjų aprašas, n pradinis duomuo, sum rezultatas, i tarpinis duomuo} begin {programos veiksmų pradžia} read(n); {pradinių duomenų skaitymo sakinys, kintamajam n priskiriama reikšmė} sum := 0; {priskyrimo sakinys, kuriuo kintamajam sum priskiriama reikšmė 0} i := 1; {priskyrimo sakinys, kuriuo kintamajam i priskiriama reikšmė 1} while i <= n do {kartojimo (ciklo) sakinio antraštė ir ciklo sąlyga} begin {ciklo veiksmų pradžia} sum := sum + i; {sumuojami skaičiai i} i := i + 1 {gaunami skaičiai, kuriuos programa turi sumuoti} end; {ciklo veiksmų pabaiga} writeln ('sum = ', sum) {rašymo sakinys, išvedantis rezultatą į ekraną} end. {programos pabaiga} Kaip reikia kurti programą?
Tikrinant, ar programa veikia teisingai, reikia parinkti pradinius duomenis, su kuriais galime mintinai suskaičiuoti rezultatus. Jeigu mūsų suskaičiuoti rezultatai ir programos ekrane išvesti rezultatai sutampa, reiškia, programa veikia gerai. Rašymo sakiniu writeln duomenų lange galime išvesti rezultatus (rašome atitinkamo kintamojo vardą) ir atspausdinti norimą pranešimą ar tekstą (rašome tarp apostrofų). Užduotys Nr. 1 Įveskite išnagrinėtąją programą, sukompiliuokite ir patikrinkite ar gerai skaičiuoja. Nr. 2 Įvesdami įvairius pradinius duomenis, suraskite didžiausią skaičių n, su kuriuo programa apskaičiuoja sumą teisingai. Nr. 3 Programoje pakeiskite žodį integer (jis nurodo, kad kintamieji yra sveiki skaičiai iš [-32767; 32767]), žodžiu:
1 tikrinamasis darbas Nr. 4 Pakeiskite programą taip, kad ji skaičiuotų:
Nr. 5 Pakeiskite programą taip, kad ji skaičiuotų visų skaičių nuo 1 iki n sandaugą. Raskite didžiausią n, su kuriuo programa veiks teisingai. 2 tikrinamasis darbas Nr. 6 Programa turi skaičių a pakelti laipsniu n. Vietoje daugtaškių įrašykite reikiamas reikšmes.
program alaipsnis;
var laips : longint; a, ..., ... : integer; begin writeln('Iveskite a ir n'); read(...); laips := ...; i := ...; while i <= n do begin laips := laips * a; i := ... + ... end; writeln(' ... = ', ...) end. Nr. 7 Parašykite programą, kuri rastų skaičiaus n faktorialą. Testas Nr. 1 |
||