Sākums / Windows pārskats / Dinamiskā programmēšana Pascal skolēniem. Ievads Pascal programmēšanas valodā. Ieejas līmenis. Skaitļu iekļaušana galvenajos faktoros

Dinamiskā programmēšana Pascal skolēniem. Ievads Pascal programmēšanas valodā. Ieejas līmenis. Skaitļu iekļaušana galvenajos faktoros

Profesionālās attīstības vide jebkuras sarežģītības pakāpes programmu un aplikāciju izveidei. Apvieno klasisko Pascal vienkāršību ar visām mūsdienu .NET izstrādes vides iespējām, ko izmanto profesionāli izstrādātāji visā pasaulē. Turklāt Paskāla programmēšanas valoda tiek mācīta skolas informātikas kursā, sniedzot skolēniem pamatzināšanas par operatoriem un mainīgajiem. Tādējādi Pascal abs apguve ir labāka iesācējiem nekā citu programmēšanas valodu apguve.

Septiņu praktisko video nodarbību kurss ir ideāli piemērots tiem, kas vēlas iemācīties izveidot programmu Pascal ABC, neatkarīgi no viņu prasmju līmeņa. Katrai nodarbībai ir savs temats, tāpēc tās var skatīties vai nu secībā, vai selektīvi, lai padziļinātu un paplašinātu savas zināšanas konkrētā jomā.

Paskāla ABC nodarbības

Videokursā prezentētās Pascal ABC nodarbības ir balstītas uz lietojumprogrammu izstrādi un sniedz praktiskas zināšanas. Visas programmas, kuras rakstāt video kursa laikā, pilnībā darbojas un ir izmantojamas ikdienā - kursā nav “ūdens” vai tukšas teorijas.

Mēs apgūstam redaktora saskarni un rakstām pirmās koda rindiņas.


Mēs pētām darba ar skaitļiem loģiku un izstrādājam taimeri.


Mēs pētām, kā programmēšanas valoda apkopo pirmkodu.



Mēs izmantojam Paskālu, lai rastu risinājumu problēmai par skolnieci Annu.


Mēs programmējam īstu virtuālo mūzikas sintezatoru.


Mēs apgūstam sarežģītas matemātiskās funkcijas un izveidojam pilnvērtīgu inženiertehnisko kalkulatoru.



Mēs izveidojam “pareizo” tālruņu grāmatu, pamatojoties uz datu bāzi.


1. nodarbība – Pirmā programma
2. nodarbība – pirmskaitļi
3. nodarbība — kompilatori (1. daļa)
3. nodarbība — kompilatori (2. daļa)
4. nodarbība – skolas problēmas risināšana
5. nodarbība – Klavieru gatavošana
6. nodarbība — uzlabots kalkulators (1. daļa)
6. nodarbība — uzlabots kalkulators (2. daļa)
7. nodarbība — ērta tālruņu grāmata (1. daļa)
7. nodarbība — ērta tālruņu grāmata (2. daļa)
7. nodarbība — ērta tālruņu grāmata (3. daļa)
7. nodarbība — ērta tālruņu grāmata (4. daļa)
8. nodarbība – Darbs ar grafiku. Daļiņu sistēma (1. daļa)
8. nodarbība – Darbs ar grafiku. Daļiņu sistēma (2. daļa)
8. nodarbība – Darbs ar grafiku. Daļiņu sistēma (3. daļa)
8. nodarbība – Darbs ar grafiku. Daļiņu sistēma (4. daļa)

Izveidosim savu pirmo programmu PascalABC.NET. Apskatīsim galvenos punktus.

PascalABC.NET – SKOLA – pirmskaitļi. Eratostena siets

Apskatīsim ātrāko algoritmu pirmskaitļu atrašanai. Eratostena siets. Eksperimentējiet, lai salīdzinātu algoritmus. Apskatīsim vēl dažas Pascal valodas funkcijas un iespējas...

PascalABC.NET – SKOLA – Kompilatori (1.Ievads) – Skaitļu ieguve

Sāksim saprast kompilatorus. Mēs meklējam tekstā veselus un daļskaitļus. Sekojiet līdzi šīs līnijas atjauninājumiem!

PascalABC.NET – SKOLA – Kompilatori (2. Pabeidziet izcelšanu) – Vārdi un virknes

Mēs turpinām izstrādāt kompilatoru. Mācīšanās izcelt vārdus un līnijas.

PascalABC.NET – SKOLA – Uzdevuma risināšana 7. klasei

PascalABC.NET – SKOLA – ♫ klavieres + OOP + Kļičko

Izdomāsim, kā izveidot vienkāršas klavieres, izmantojot OOP (objektorientētā programmēšana).

PascalABC.NET - SKOLA - 1. Foršs kalkulators ar iekavām. Izteicienu parsēšana

Mēs rakstām jaudīgu kalkulatoru, kas parsē iekavas un funkcijas, piemēram, sin vai trunc. OOP (objektorientētā programmēšana).

PascalABC.NET - SKOLA - 2. Foršs kalkulators ar iekavām. Izteicienu parsēšana

TURPINĀJUMS!!! Mēs atdzīvinām jaudīgu kalkulatoru, kas analizē iekavas un funkcijas, piemēram, grēku vai trunc. OOP (objektorientētā programmēšana).

PascalABC.NET - SKOLA - 1. Uzlabota tālruņu grāmata! Ātrā meklēšana. Indeksēšana

Kā ieviest ātru meklēšanu lielā datu apjomā. Grafu teorija. Izveidosim to, kā piemēru izmantojot tālruņu grāmatu.

Droši vien nav neviena mūsdienu cilvēka, kurš nezinātu Paskāla valodu (programmēšanas pamatus). Un tas nav pārsteidzoši! Šīs unikālās programmas pamatjēdzieni ir aprakstīti datorzinātņu mācību grāmatā skolēniem.

Tagad, šajā gadsimtā informācijas tehnoloģijas, ikviens var veikt pašmācības apmācību tiešsaistē (apgūstot kursus “Programmēšanas valodu apguve no nulles”, “Pascal for dummies” un citus).

Apgūstamās valodas vēsture nav tik vienkārša: Paskāls piedzīvoja daudzas izmaiņas, pirms skolēni to ieraudzīja tādā formā, kādā to māca klasē. Tā bija pati pirmā vienkāršā programmēšanas valoda (ord Pascal), kas palīdzēja atrisināt daudzas pagājušā gadsimta (1970) praktiskas problēmas. To izstrādāja zinātnieku grupa.

Paplašinoties platformām, tika radītas jaunas šīs programmas versijas, un Pascal kļuva par klasisku programmēšanas valodu.

Tālāk mēs apskatīsim, kas ir Pascal un kādi ir tā galvenie rīki. Apskatīsim programmas darbības un funkcijas, tās īpatnības. Izmantosim piemērus, lai saprastu, kā tas darbojas. Mācīsimies rakstīt un strādāt Paskālā.

Kas ir Pascal programmēšanas valoda

Šī ir pamata augsta līmeņa programma. Daudzu Krievijas Federācijas skolu un universitāšu mācību programmās tas ieņem pirmo vietu.

PascalABC.NET sistēmas funkcijas

Viss tiek apgūts, salīdzinot, tāpēc apsvērsim šīs programmas priekšrocības salīdzinājumā ar citu BASIC valodu.

Tātad, kas ir raksturīgs Pascal valodai un kas nav piemērots BASIC:

  1. Pirmkārt, kompilatora klātbūtne, kas ļauj lejupielādēt Pascal uz jebkuru platformu.
  2. Otrkārt, visas šīs programmas versijas ir savietojamas viena ar otru.
  3. Treškārt, strukturēti datu tipi palīdz programmētājam precīzi sastādīt nepieciešamo algoritmu praktiskas problēmas risināšanai, vienlaikus to aizsargājot.
  4. Ceturtkārt, programmas saskarnes skaidrība un loģika: visas komandas ir vienkāršas un saprotamas.
  5. Piektkārt, pārslēgšanās uz citu, augstāka līmeņa programmēšanas valodu ir pavisam vienkārša.

Programmu piemēri vietnē PascalABC.NET

Ievadīto veselo skaitļu summa

Veselu skaitļu reizinājums

Cik starp ievadītajiem n ir nepāra?

Nederīga ievades aizsardzība

Secinājums par 10 pirmajiem pakāpēm no diviem

Atrodiet pozitīva vesela skaitļa m ciparu summu

Skaitļu iekļaušana galvenajos faktoros

Paskāls iesācējiem — pamatjēdzieni

Apskatīsim pamatjēdzienus, kas palīdz pareizi uzrakstīt programmu šajā valodā.

Darba zona

Kā izskatās darbvieta?

Tagad apskatīsim pamatus: alfabētu un struktūru.

Alfabēts Paskāls

Kas jums jāzina? Alfabēts ir simbolu kopums, kas nepieciešams, veidojot programmu.

Kas tajos ietilpst:

  1. Latīņu lielie, mazie burti (A, B, C...a,b,c).
  2. Aritmētiskie simboli (0, 1, 2...).
  3. Speciālās rakstzīmes (pieturzīmes, iekavas, pēdiņas, aritmētiskās zīmes utt.).
  4. Nedalāmi simboli (:=, ˃=…).
  5. Funkciju vārdi:
  • un – un;
  • masīvs – masīvs;
  • sākt – sākums;
  • darīt – izpildīt;
  • cits - citādi;
  • par – par;
  • ja - ja;
  • no – no;
  • vai – vai;
  • procedūra – procedūra;
  • programma – programma;
  • atkārtot – atkārtot;
  • tad – tas;
  • uz – pirms;
  • līdz – līdz (= kamēr);
  • var – mainīgs;
  • kamēr - pagaidām.

Lūdzu, ņemiet vērā: konstantēm un operācijām nedrīkst būt tādi paši nosaukumi kā funkciju vārdiem (jebkurš garums).

Programmas struktūra

Tātad, kas ir iekļauts šīs programmas “hierarhijā”?

Pēc struktūras šī valoda ir sadalīta 3 sadaļās:

  • Vārds;
  • dati;
  • darbības.

Lūdzu, ņemiet vērā: Mainīgie ir jānorāda, atdalot tos ar komatiem, un pēc tam to veids jānorāda ar “:”. Pabeidziet rakstīto vārdu ar “;”.

Darbības sākas ar "sākt" un beidzas ar "beigām" ar punktu.

Struktūru var attēlot šādi:

Starp citu, operatori ir atdalīti ar semikolu.

Operatori raksta, raksta, lasa, lasa

Noskaidrosim, kā notiek informācijas izvade un ievade.

Secinājums

Šajā valodā nav izvades operatoru kā tādu, taču ir īpaši vārdi, kas palīdz palaist nepieciešamās funkcijas. Šis rakstīt, rakstīt.

Kāda ir to galvenā atšķirība? Ievadot vai izvadot turpmāko informāciju aiz tiem: pirmajā gadījumā turpmākā informācija tiks izvadīta tajā pašā rindā, kur rakstīts paziņojums. Bet otrajā - uz nākamo.

Ievadiet

Ir arī vārdi ievadei: lasīt, lasīt(=lasīšanas atslēga).

Tie atšķiras viens no otra tāpat kā iepriekšējie paziņojumi (izvadā).

Vesela skaitļa datu tips

Ir 3 galvenie veidi:

  1. Vesels skaitlis.
  2. baits.
  3. Longint.

Viņi veic arī vienkāršas darbības:

  • papildinājums – “+”;
  • atņemšana – “-”;
  • reizināšana - "*";
  • nodaļa – “div”.

Turklāt ir atļauts veidot attiecības un salīdzinājumus (lielāks par vai vienāds ar - ˃ =).

Reāli datu veidi

Šādi mainīgie lielumi ietver daļskaitļus (piemēram, pi). Šeit tos sauc par īstiem.

Ko atcerēties? Lai ievadītu daļēju formulu, komata vietā ir jāizmanto punkts. Lai rakstītu pilnvaras (x * 10 y), 10 aizstāj ar E un skaitlim ir apzīmējums:

Ar to palīdzību jūs varat veikt gan vienkāršākās aritmētiskās darbības, gan sarežģītākas:

  • kvadrātsakne – sqrt;
  • absolūtā vērtība – abs;
  • kvadrātfunkcija – sqr;
  • sine – grēks;
  • kosinuss – cos;
  • arctangents – arktāns;
  • naturālais logaritms – ln;
  • eksponents – exp.

Datu apstrāde

Papildus iepriekš minētajām funkcijām (iepriekšējos 2 punktos) ir arī citas:

  • skaitļa vesela daļa – int;
  • skaitļa daļdaļa – frac;
  • skaitļa veselās daļas iegūšana – trunc;
  • noapaļošana līdz tuvākajam veselajam skaitlim – apaļa;
  • kārtas tipa konversija – ord;
  • koda pārvēršana rakstzīmju veidā – chr;
  • daudzuma iepriekšējās vērtības noteikšana – pred;
  • daudzuma turpmākās vērtības noteikšana – succ.

Matemātiskās operācijas

Parsējot veselus skaitļus un reālos datus, tika aptvertas matemātiskās funkcijas un darbības.

Koncentrēsimies uz konstantu un mainīgo veidiem. Kas tie ir?

Vienkāršie veidi ietver apakštipus:

  • integers – vesels skaitlis;
  • loģisks – Būla;
  • raksturs – char;
  • uzskaitāms;
  • intervāls;
  • īsts

Virknes tiek rakstītas ar komandu string. Atsauces tiek sniegtas atbilstošā formā.

Strukturētie ir sadalīti:

  • masīvi – masīvs;
  • ieraksti – ieraksts;
  • komplekti – komplekts;
  • fails - fails.

Katram veidam ir savs darbību kopums.

Noteikumi

Ja ir alternatīvas komandas un funkcijas, tad, izmantojot if, then, else priekšrakstus, var pierakstīt vajadzīgās komandas, lai atrisinātu kādu praktisku problēmu.

Diagramma ir parādīta zemāk esošajā attēlā.

Loģiskās operācijas

Operācijas balstās uz fakta patiesumu vai tā meliem.

Ir 3 šādu funkciju veidi:

  1. Nepāra - ja skaitlis ir nepāra, tad patiess (pretēji - nepatiess).
  2. Eoln – taisnība rindas beigās (citur – false).
  3. Eof – patiess faila beigās (citur – false).

Programmas vadības funkcijas

Kādas citas procedūras pastāv:

  • Inc – skaita pieaugums;
  • Clrscr – iepriekšējo programmas rezultātu dzēšana;
  • Izmanto crt – palaist clscr;
  • Length – atgriež virknes garumu;
  • Val – pārvērst virkni par skaitli;
  • Pos – atrod pirmo transformāciju virknē;
  • Assign – mainīgā saistīšana ar failu;
  • Upcase - mazo burtu pārveidošana par lielajiem.

Secinājums

Tātad, lai kļūtu par labu programmētāju, vispirms ir jāapgūst pamati. Pascal ir labākā izvēle šim nolūkam.

PascalABC programmēšanas vide tiek izmantota kā pamatizglītība programmēšana skolēniem Pascal programmēšanas valodā. Vide satur spēcīgu palīdzības sistēma un iebūvēta problēmu grāmata ar automātiski pārbaudītiem uzdevumiem. Tas ļaus jums ātri iemācīties rakstīt programmas Pascal.

Problēmu grāmatas bezmaksas mini versijā visās galvenajās sadaļās ir 270 uzdevumi. Tas ir pilnīgi pietiekami, lai patstāvīgi apgūtu sākotnējo programmēšanas līmeni. Šeit varat bez maksas lejupielādēt Pascal versiju 3.0 . Pašlaik šī versija vairs netiek atbalstīta, un izstrādātāji strādā pie PascalABC.Net. Tātad sāksim paskāls abc izglītība.

PascalABC programmas saskarnes izskats

Programmēšanas vides logs izskatās standarta. Tajā ir izvēlņu josla (1), zemāk ir ātrās piekļuves rīkjosla (2). Tālāk ir koda redaktora darba zona.


Izskats programmas saskarne

Etiķetes tiek rādītas augšpusē atvērt failus ar programmu tekstiem (3). Vienlaicīgs darbs ar vairākiem tekstiem ievērojami vienkāršo programmu izveidi. Varat kopēt un pārvietot koda sadaļas no viena faila uz citu (4).

Programmas izpildes režīmā var redzēt datu ievades un rezultātu izvades zonu (5).

Darbs ar PascalABC

Pēc programmas ievadīšanas tā ir jāsaglabā un jāiestata nosaukums. Lai to izdarītu, varat izmantot komandu Fails - Saglabāt kā vai atbilstošo pogu rīkjoslā.

Piešķiriet nosaukumu, kas atšķiras no noklusējuma. Tādējādi turpmāk varēsiet vieglāk atrast vajadzīgo kodu.

Palaist

Tagad varat palaist programmu, lai pārbaudītu tās darbību. Start komanda Programma - Run vai zaļā trīsstūra poga rīkjoslā. Kods tiek apkopots pirms palaišanas. Ja kodā ir kļūdas, parādīsies sarkana līnija, kas apraksta kļūdu.


Kļūdas programmā

Kursors norādīs iespējamās kļūdas vietu, taču tas ne vienmēr sakrīt ar tās aprakstu. Piemēram, iepriekš redzamajā ekrānuzņēmumā kursors norāda uz Y mainīgo, bet kļūda ir ietverta augstāk esošajā rindā. Trūkst semikola rakstzīmes, kurai ir jābūt katras zīmes beigās komandrinda. Pēc kļūdas labošanas palaidiet programmu vēlreiz.

Stop

Programma apstājas, kad tā ir pabeigta. Bet var būt gadījumi, kad programma ir jāpārtrauc piespiedu kārtā. Lai to izdarītu, rīkjoslā ir poga “Apturēt” vai komanda Programma - Finišs.

Iestatījumi teksta redaktors abc paskāls

Pēc noklusējuma koda redaktoram ir iestatīts minimālais fonta lielums. Ja rakstīšanas laikā rodas diskomforts, dodieties uz izvēlni Pakalpojums — redaktora iestatījumi. Iestatiet vajadzīgo fonta lielumu.


Pascal ABC redaktora iestatīšana

Darbs ar elektronisko problēmu grāmatu

Bez prakses nav iespējams iemācīties rakstīt Pascal programmas. Pascal programmas automātiskās testēšanas sistēma palīdzēs apgūt programmēšanu Pascal valodā.
Dodieties uz izvēlni Rīki — Izveidot programmas veidni. Tiks atvērts šāds logs (skatīt zemāk)

Šeit jums jāieraksta uzdevumu grupas nosaukums. Mēs skatāmies sarakstu un ieejam vēlamo grupu tieši tā, kā rakstīts logu sarakstā. Pēc uzdevumu grupas nosaukuma norādīšanas uzvedne mainīsies.

Tagad tiks norādīts pieejamo uzdevumu skaits šajā grupā vai norādīti konkrēto uzdevumu numuri. Jūs pievienojat numuru grupas nosaukumam bez atstarpes. Nospiediet pogu. Tiks atvērta cilne ar atlasīto uzdevumu. Jaunajā failā būs automātiski ģenerēts kods. To nevar izdzēst.

Tagad, lai skatītu uzdevuma tekstu, noklikšķiniet uz programmas palaišanas pogas.

Paskatieties uz logu augšpusē. Tas ir sadalīts trīs daļās. Pirmajā daļā ir norādīts uzdevuma nosacījums, kuram jāraksta kods. Otrajā daļā cipari ir norādīti dzeltenā krāsā. Šie ir problēmu grāmatas ģenerētie avota dati. Tie tiks lasīti. Trešajā daļā tiek parādīts rezultāts, kas tiks iegūts, izpildot programmu. Tagad aizveriet logu un pievienojiet kodu.

Sāksim izpildi. Ja kļūdu nav, mēs saņemsim logu.

Lai izturētu visus testus, programma ir jāpalaiž vairākas reizes. Un tikai pēc visu testu nokārtošanas uzdevums saņems statusu “Uzdevums izpildīts!” Tagad jūs varat pāriet uz nākamo uzdevumu.

2. izd. - Sanktpēterburga: 2011. - 320Ar.

Šī grāmata nav mācību grāmata, bet gan palīgs Paskāla programmēšanas valodas apguvē, ar kuru datorzinātņu stundās tiek iepazīstināti visi skolēni. Tas sastāv no nodarbībām, kas veltītas praktiskai programmēšanai un problēmu risināšanas jautājumiem. Daudzi piemēri ļauj labāk izprast, kā izveidot algoritmu, uzrakstīt savu programmu un pareizi formatēt tās tekstu. Padomi un piezīmes palīdz lasītājam pievērst uzmanību svarīgām detaļām, ļaujot izvairīties no kļūmēm un efektīvāk rakstīt programmas. Grāmatu sagatavojuši skolas informātikas skolotāji ar lielu ilggadēju pieredzi praktiskais darbs

. Otrajā izdevumā ir pievienotas vairākas jaunas nodaļas par ierakstiem, dinamiskajiem mainīgajiem, steku, rindām un sarakstiem. Tiek apskatīta arī viena no grūtākajām tēmām programmēšanā - rekursīvo algoritmu konstruēšana. Formāts: pdf

(2011, 2. izdevums, 320 lpp.) Izmērs:

14,5 MB Skatīties, lejupielādēt:

docs.google.com
Saturs
Priekšvārds otrajam izdevumam 15
Ievads 16
No izdevēja 16
1. TĒMA. Kā uzrakstīt vienkāršu programmu Pascal 17 valodā
Nodarbība 1.1. Displeja ekrānā tiek parādīts ziņojums 18
Nodarbība 1.2. Kā instalēt šo programmu datorā 19 Radīšanas posmi 20
datorprogramma
Nodarbība 1.3. Teksta formatēšana ekrānā 28
Secinājumi 34
Pārbaudes jautājumi 34
2. TĒMA. Kā savā darbā iekļaut skaitliskos datus 36
Nodarbība 2.1. Sāksim ar kaut ko vienkāršu: veseliem skaitļiem 37
Ierakstiet Integer. Piešķiršanas operators. Displejs 38
Darbības ar veidu Integer 40
Integer 42 standarta funkcijas
Kā tiek attēloti vesela skaitļa tipa mainīgie
datora atmiņā 43
Nodarbība 2.2. Darbā iekļaujam reālos skaitļus 45
Reālā datu tipa apraksts (reāls) 45
Reālu mainīgo ierakstīšanas formāti 46
Darbības ar materiāliem 46
Real 47 standarta funkcijas
Matemātikas izteiksmju rakstīšana 48
Kā reālā tipa mainīgie tiek attēloti datora atmiņā 50
Nodarbība 2.3. Kā apvienot vesela un reāla tipa mainīgos 51
Tipa konvertēšana 51
Prioritātes noteikumi veiktajās darbībās 52
Darbības ar datiem dažādi veidi 53
Nodarbība 2.4. Datu ievade un izvade 56
Mainīgo ievade no tastatūras 57
Skaists displejs 57
Mainīgo vērtību iestatīšana, izmantojot nejaušo skaitļu sensoru 61
Nodarbība 2.5. Kāpēc programmā ir vajadzīgas konstantes? 62
Secinājumi 64
Pārbaudes jautājumi 64
3. TĒMA. Mācīšanās strādāt ar simboliem 66
Nodarbība 3.1. Kā dators saprot simbolus 67
ASCII 67 kodu tabula
Char tipa un standarta funkciju apraksts 68
Nodarbība 3.2. Char tips ir kārtas tips! 70
Secinājumi 71
Pārbaudes jautājumi 72
4. TĒMA. Džordžs Būls un viņa loģika 73
Nodarbība 4.1. Vajag vēl vienu tipu - loģiski! 74
Būla datu tips 75
Relāciju operācijas 75
Būla I/O 76
Nodarbība 4.2. Loģiskās (būla) darbības 76
Loģiskā reizināšana (savienojums) 76
Loģiskā saskaitīšana (disjunkcija) 77
Ekskluzīvs VAI (papildinājums modulo 2) 77
Loģiskā noliegšana (inversija) 78
Loģisko operāciju izmantošana programmā 78
Loģiskās darbības prioritāte 80
Secinājumi 81
Pārbaudes jautājumi 81
5. TĒMA. Situācijas analīze un komandu izpildes secība 82
Nodarbība 5.1. Nosacījumu pārbaude un atzarošana algoritmā 83
Ja paziņojuma pilna un daļēja forma 84
Programmu izstrāde 86
Nodarbība 5.2. Operatora bloki 88
Nodarbība 5.3. Atzarojums saskaņā ar vairākiem nosacījumiem (lietas apraksts) 92
Secinājumi 96
Pārbaudes jautājumi 96
6. TĒMA. Atkārtotas darbības 98
Nodarbība 6.1. Cikla paziņojums par 99
Operators ar secīgu skaitītāja palielinājumu 100 Operators ar skaitītāja secīgu samazināšanu 101
Nodarbība 6.2. Izmantojot cilpas ar skaitītāju 101
Cikls cikla ietvaros 102
Trace 103
Aprēķinot 105. sērijas summu
Secinājumi 108
Pārbaudes jautājumi 109
7. TĒMA. Cilpas ar 110. stāvokli
Nodarbība 7.1. Cilpa ar priekšnosacījumu 111
Cilpas apraksts ar priekšnosacījumu 111
Aptuvens bezgalīgas sērijas 112 summas aprēķins
Skaitļa palielināšana līdz norādītajam veselam skaitļa pakāpēm 115
Nodarbība 7.2. Cilpa ar pēcnosacījumu 119
Cilpas apraksts ar pēcnosacījumu 120
Izmantojot atkārtošanas un kamēr cilpas 120
Operatoru, kamēr un atkārtojuma izvēles relativitāte 123
Secinājumi 129
Pārbaudes jautājumi 129
8. TĒMA. Masīvi - strukturēto datu tips 131
Nodarbība 8.1. Līdzīgu datu saglabāšana tabulas veidā 132
Pamatdarbības darbam ar masīviem 133
Masīva apraksts Pascal 133
Masīva aizpildīšana ar nejaušiem skaitļiem un masīva parādīšana ekrānā 134
Pielāgota datu veida izveide 137
Maksimālā masīva elementa atrašana 140
Masīva elementu summas un skaita aprēķināšana ar dotajām īpašībām 144
Nodarbība 8.2. Meklēt masīvā 148
Negatīvā elementa klātbūtnes noteikšana masīvā, izmantojot karogu 148
Negatīvo elementu klātbūtnes noteikšana masīvā, aprēķinot to skaitu 149
Masīva negatīvā elementa skaitļa atrašana 150
Nodarbība 8.3. Divdimensiju masīvi 154
Secinājumi 156
Pārbaudes jautājumi 157
9. TĒMA. Papildalgoritmi. Procedūras un funkcijas. Strukturētā programmēšana 1 58
Nodarbība 9.1. No augšas uz leju vērsta algoritma izstrāde 159
Praktiska problēma, izmantojot palīgalgoritmus 160
Nodarbība 9.2. Piemērs darbam ar funkciju: Maksimālā elementa atrašana 167
Secinājumi 168
Pārbaudes jautājumi 169
10. TĒMA. Kā strādāt ar rakstzīmju virknēm 170
Nodarbība 10.1. Darbs ar rakstzīmju virknēm: ierakstiet String 171
Virknes mainīgā 171 apraksts
Pamatoperācijas ar 172 stīgām
Nodarbība 10.2. Dažas Pascal funkcijas un procedūras darbam ar virknēm 173
Bibliotēkas virkņu rutīnu izmantošana 173
Secinājumi 175
Pārbaudes jautājumi 175
11. TĒMA. Procedūras un funkcijas ar parametriem 176
Nodarbība 11.1. Vienkārši piemēri izmantojot apakšprogrammas ar parametriem 177
Vienkāršākās procedūras ar parametriem 177
Formālie un faktiskie parametri 179
Vienkāršākās funkcijas ar parametriem 179
Nodarbība 11.2. Parametru nodošanas metodes 181
Secinājumi 183
Pārbaudes jautājumi 184
12. TĒMA. Faili: darba rezultātu saglabāšana līdz nākamajai reizei 185
Nodarbība 12.1. Kā strādāt ar teksta failu 186
Faila atvēršana lasīšanai 186
Faila atvēršana rakstīšanai 188
Nodarbība 12.2. Divdimensiju skaitļu masīva saglabāšana teksta fails 192
Ciparu datu saglabāšana teksta failā 192
Ciparu masīva saglabāšana teksta failā 192
Informācijas pievienošana faila beigām 196
Secinājumi 197
Pārbaudes jautājumi 197
13. tēma. Grafiskais darbības režīms. Grafika modulis 199
Nodarbība 13.1. Ieslēdziet grafiskais režīms strādā 200
Iezīmes darbam ar grafiku 200
Pārslēgšanās uz video adaptera grafisko režīmu 201
Nodarbība 13.2. Mēs turpinām pētīt Graph 203 moduļa iespējas
Līniju zīmēšana, izmantojot Graph 203 moduli
Apļu zīmēšana, izmantojot Graph 205 moduli
Secinājumi 206
Pārbaudes jautājumi 207
14. tēma. Operatori, kas maina programmas dabisko plūsmu 208
Nodarbība 14.1. Izmantojot goto 210 beznosacījumu lēciena operatoru
Nodarbība 14.2. Paziņojumi, kas maina cilpas plūsmu 213
pārtraukuma paziņojums 213
Operatora turpinājums 214
Secinājumi 215
Pārbaudes jautājumi 215
15. tēma. Datu grupēšana: ieraksti 216
Nodarbība 15.1. 218. datu tipa ieraksta apraksts
Nodarbība 15.2. Kad un kā gudri izmantot 220 ierakstus
Sava datu tipa izveide - ieraksts 220
Ierakstu masīvs 220
Pievienojieties operatoram ar 221
Datu struktūras atlases piemērs 223
Rekordu ieraksti 224
Secinājumi 225
Pārbaudes jautājumi un uzdevumi 225
16. tēma. Dinamiskie mainīgie 226
Nodarbība 16.1. Atmiņas piešķiršana 227
Nodarbība 16.2. Adreses 229
Nodarbība 16.3. 230. zīmes
Norādes uz atsevišķiem mainīgajiem 230
Norādes uz mainīgo blokiem 232
Nodarbība 16.4. Dinamiskā atmiņas piešķiršana 232
Jauns un izmests 233
Dinamiskā atmiņas piešķiršana masīviem 235
GetMem un FreeMem 236
Piekļuve dinamiski izveidotā masīva elementiem 237
Mainīga garuma masīvs 238
Secinājumi 241
Pārbaudes jautājumi 242
17. tēma. Dinamiskās datu struktūras. 244. kaudze
Nodarbība 17.1. Aprakstīsim datu tipu 245
Nodarbība 17.2. Stenda izveide un pamata steka darbības 247
Elementa pievienošana kaudzītei (Push) 248
Elementa izlēciens no steka (Pop) 251
Pārbaude, vai kaudzīte nav tukša (StacklsEmpty) 252
Nodarbība 17.3. Izmantojot 253 steku
Stackas programmēšana, izmantojot 255 masīvu
Secinājumi 256
Pārbaudes jautājumi un uzdevumi 256
18. tēma. Dinamiskās datu struktūras. 258. rinda
Nodarbība 18.1. 259. datu tipa darbības princips un apraksts
Nodarbība 18.2. Pamatdarbības rindā 261
Elementa pievienošana rindai (EnQueue) 261
Elementa noņemšana no rindas (DeQueue) 263
Rindas tukšuma pārbaude (QueuelsEmpty) 264
Nodarbība 18.3. Izmantojot rindu 264
Rindas programmēšana, izmantojot masīvu 267
Secinājumi 269
Pārbaudes jautājumi 269
19. tēma. Dinamiskās datu struktūras. Vienvirziena saraksts 270
Nodarbība 19.1. Datu veida un darbības principa apraksts 271
Nodarbība 19.2. Pamatoperācijas ar vienvirziena sarakstu 272
Visu saraksta elementu secīga apskate 272
Elementa ievietošana sarakstā 273
Elementa noņemšana no saraksta 275
Nodarbība 19.3. Saraksta apstrāde 276
Vienvirziena saraksta izmantošanas iespējamība 278
Secinājumi 280
Pārbaudes jautājumi 280
20. tēma. Rekursija 281
Nodarbība 20.1. 282. principa apraksts
Nodarbība 20.2. Hanojas torņi 285
Nodarbība 20.3. Atkārtotas apakšprogrammas struktūra 287
Nodarbība 20.4. Neatkārtotas problēmas atkārtota risinājuma piemērs 288
Nodarbība 20.5. Atkārtotas problēmas atkārtota risinājuma piemērs 289
Secinājumi 291
Pārbaudes jautājumi 291
Pielikums 1. Blokshēmas elementi 292
Pielikums 2. Uzdevumi 295
Vesels skaitlis. Apraksts. Ievadiet. Secinājums. Operācijas 296
Īsta. Apraksts. Ievadiet. Secinājums. Darbības un funkcijas 296
Īsta. Izteicienu rakstīšana un vērtēšana 297
Char. Apraksts. Ievadiet. Secinājums. Funkcijas 298
Būla. Izteicienu rakstīšana 298
Būla. Izteicienu novērtēšana 299
Ja. Vienkārši salīdzinājumi. Min./maks./vidēji 300
Ja. Vienādojumi un nevienādības ar 300 parametriem
Par. Pārskaitījumi 300
Par. Aprēķini ar cilpas skaitītāju 301
Par. Pārmērība ar salīdzinājumiem 302
Kamēr-Atkārtot. Meklēt 302
Kamēr-Atkārtot. 303. rinda
Grafika. Taisni 303
Grafika. Apļi 304
Masīvi. Aizpildīšana, izņemšana, daudzums/daudzums 305
Masīvi. Permutācijas 305
Masīvi. Meklēt 306
Masīvi. Pārbaudes 307
Masīvi. Maksimums 307
Apakšprogrammas bez parametriem 307
Līnijas. I daļa 308
Līnijas. II daļa 309
Apakšprogrammas ar parametriem. I daļa 309
Apakšprogrammas ar parametriem. II daļa 310
Apakšprogrammas ar parametriem. III daļa 310
Faili 311
Vienvirziena saraksts 312
Rekursija 313

Pēc grāmatas pirmā izdevuma iznākšanas mūsu kolēģi un studenti arvien biežāk sāka sazināties ar mums ar lūgumu papildināt pirmo izdevumu ar informāciju par pētītākajām un pieprasītākajām datu struktūrām. Šajā izdevumā esam pievienojuši vairākas nodaļas par ierakstiem, dinamiskajiem mainīgajiem, steku, rindu un sarakstiem. Mēģinājām aptvert arī vienu no sarežģītākajām programmēšanas tēmām – rekursīvo algoritmu konstruēšanu.
Pieteikumā nolēmām atteikties no mājasdarbu kolekcijas ar daudzām iespējām par vairākām tēmām. Tā vietā mēs lietojumprogrammā iekļāvām lielu skaitu tematisko uzdevumu, kas sakārtoti 5-8 uzdevumu blokos. Uzdevumi katrā blokā ir sakārtoti no vienkāršiem līdz sarežģītiem. Mēs tos izmantojam savās nodarbībās, lai organizētu praktiskus vingrinājumus, vienlaikus pastiprinot teorētisko materiālu (viena nodarbība - viens bloks).
Autori izsaka visdziļāko pateicību vienam no saviem labākajiem studentiem, Drošības katedras asociētajam profesoram informācijas sistēmas SPbSUAP, Ph.D. Jevgeņijam Mihailovičam Linskim par atbalstu, daudziem noderīgi padomi un liela palīdzība, strādājot pie grāmatas otrā izdevuma.