Bahay / Pangkalahatang-ideya ng Windows / Dynamic programming pascal para sa mga mag-aaral. Panimula sa Pascal programming language. Entry level. Pag-factor ng isang numero sa mga pangunahing kadahilanan

Dynamic programming pascal para sa mga mag-aaral. Panimula sa Pascal programming language. Entry level. Pag-factor ng isang numero sa mga pangunahing kadahilanan

Propesyonal na kapaligiran sa pag-unlad para sa paglikha ng mga programa at aplikasyon ng anumang antas ng pagiging kumplikado. Pinagsasama ang klasikong pagiging simple ng Pascal sa lahat ng mga kakayahan ng modernong .NET development environment na ginagamit ng mga propesyonal na developer sa buong mundo. Bilang karagdagan, ang wikang pamprograma ng Pascal ay itinuturo sa isang kurso sa computer science ng paaralan, na nagbibigay sa mga mag-aaral ng pangunahing kaalaman sa mga operator at variable. Kaya, ang pag-aaral ng Pascal abs ay mas mahusay para sa mga nagsisimula kaysa sa pag-aaral ng iba pang mga programming language.

Ang kurso ng pitong praktikal na mga aralin sa video ay mainam para sa mga gustong matuto kung paano gumawa ng isang programa sa Pascal ABC, anuman ang kanilang antas ng kasanayan. Ang bawat aralin ay may kanya-kanyang paksa, kaya maaari mong panoorin ang mga ito alinman sa pagkakasunud-sunod o pili upang mapalalim at mapalawak ang iyong kaalaman sa isang partikular na lugar.

Mga Aralin sa Pascal ABC

Ang mga aralin sa Pascal ABC na ipinakita sa kursong video ay batay sa pagbuo ng mga programa ng aplikasyon at nagbibigay ng praktikal na kaalaman. Ang lahat ng mga programa na isinulat mo sa kurso ng video ay ganap na gumagana at maaaring magamit sa pang-araw-araw na buhay - walang "tubig" o walang laman na teorya sa kurso.

Namin master ang editor interface at isulat ang aming mga unang linya ng code.


Pinag-aaralan namin ang lohika ng pagtatrabaho sa mga numero at nagdidisenyo ng timer.


Pinag-aaralan namin kung paano kino-compile ng isang programming language ang source code.



Ginagamit namin si Pascal para makahanap ng solusyon sa problema tungkol sa schoolgirl na si Anna.


Nag-program kami ng isang tunay na virtual music synthesizer.


Nakabisado namin ang mga kumplikadong mathematical function at lumikha ng isang ganap na calculator ng engineering.



Lumilikha kami ng "tamang" phone book batay sa database.


Aralin 1 - Unang programa
Aralin 2 - Prime number
Aralin 3 - Mga Compiler (Bahagi 1)
Aralin 3 - Mga Compiler (Bahagi 2)
Aralin 4 - Paglutas ng problema sa paaralan
Aralin 5 - Paggawa ng Piano
Aralin 6 - Advanced na Calculator (Bahagi 1)
Aralin 6 - Advanced na Calculator (Bahagi 2)
Aralin 7 - Maginhawang phone book (Bahagi 1)
Aralin 7 - Maginhawang phone book (Bahagi 2)
Aralin 7 - Maginhawang phone book (Bahagi 3)
Aralin 7 - Maginhawang phone book (Bahagi 4)
Aralin 8 - Paggawa gamit ang mga graphics. Particle System (Bahagi 1)
Aralin 8 - Paggawa gamit ang mga graphics. Particle System (Bahagi 2)
Aralin 8 - Paggawa gamit ang mga graphics. Particle System (Bahagi 3)
Aralin 8 - Paggawa gamit ang mga graphics. Particle System (Bahagi 4)

Gawin natin ang aming unang programa sa PascalABC.NET. Tingnan natin ang mga pangunahing punto.

PascalABC.NET – SCHOOL – Prime number. Salain ng Eratosthenes

Tingnan natin ang pinakamabilis na algorithm para sa paghahanap ng mga prime number. Salain ng Eratosthenes. Mag-eksperimento upang ihambing ang mga algorithm. Tingnan natin ang ilan pang mga function at kakayahan ng wikang Pascal...

PascalABC.NET – SCHOOL – Compiler (1.Introduction) – Number extraction

Simulan natin ang pag-unawa sa mga compiler. Naghahanap kami ng buo at fractional na mga numero sa teksto. Manatiling nakatutok para sa mga update sa linyang ito!

PascalABC.NET – SCHOOL – Compiler (2. Tapusin ang pag-highlight) – Mga salita at string

Patuloy naming binuo ang compiler. Pag-aaral upang i-highlight ang mga salita at linya.

PascalABC.NET – SCHOOL – Paglutas ng problema para sa ika-7 baitang

PascalABC.NET – SCHOOL – ♫ Piano + OOP + Klitschko

Alamin natin kung paano gumawa ng simpleng piano gamit ang OOP (object-oriented programming).

PascalABC.NET - SCHOOL - 1. Cool na calculator na may mga bracket. Parsing expression

Nagsusulat kami ng isang makapangyarihang calculator na nag-parse ng mga panaklong at mga function, gaya ng sin o trunc. OOP (Object Oriented Programming).

PascalABC.NET - SCHOOL - 2. Cool na calculator na may mga bracket. Parsing expression

PATULOY!!! Binubuhay namin ang isang malakas na calculator na nag-parse ng mga panaklong at mga function, gaya ng sin o trunc. OOP (Object Oriented Programming).

PascalABC.NET - SCHOOL - 1. Advanced na phone book! Mabilis na paghahanap. Pag-index

Paano ipatupad ang mabilis na paghahanap sa malaking dami ng data. Teorya ng graph. Gawin natin ito gamit ang phone book bilang halimbawa.

Marahil ay wala ni isang modernong tao na hindi alam ang wikang Pascal (ang mga pangunahing kaalaman sa programming). At ito ay hindi nakakagulat! Ang pinakapangunahing mga konsepto ng natatanging programang ito ay inilarawan sa aklat-aralin sa computer science para sa mga mag-aaral.

Ngayon, sa siglong ito teknolohiya ng impormasyon, lahat ay maaaring magsagawa ng self-tutorial na pagsasanay online (sa pamamagitan ng pagkuha ng mga kursong "Pag-aaral ng mga programming language mula sa simula"; "Pascal for dummies" at iba pa).

Ang kasaysayan ng wikang pinag-aaralan ay hindi gaanong simple: Si Pascal ay sumailalim sa maraming pagbabago bago ito nakita ng mga mag-aaral sa anyo kung saan ito itinuro sa silid-aralan. Ito ang pinakaunang simpleng wika (ord pascal) para sa programming, na tumutulong sa paglutas ng maraming praktikal na problema noong huling siglo (1970). Ito ay binuo ng isang pangkat ng mga siyentipiko.

Habang lumalawak ang mga platform, nilikha ang mga bagong bersyon ng program na ito, at naging isang klasikong programming language ang Pascal.

Sa ibaba ay titingnan natin kung ano ang Pascal at kung ano ang mga pangunahing tool nito. Isaalang-alang natin ang mga pagpapatakbo at pag-andar ng programa, ang mga partikular na tampok nito. Gumamit tayo ng mga halimbawa upang maunawaan kung paano ito gumagana. Matuto tayong magsulat at magtrabaho sa Pascal.

Ano ang Pascal programming language

Ito ay isang pangunahing programa sa mataas na antas. Nangunguna ito sa kurikulum ng maraming mga paaralan at unibersidad sa Russian Federation.

Mga tampok ng sistema ng PascalABC.NET

Ang lahat ay natutunan sa pamamagitan ng paghahambing, kaya isaalang-alang natin ang mga pakinabang ng programang ito kaugnay ng isa pang BATAYANG wika.

Kaya, ano ang tipikal para sa wikang Pascal at kung ano ang hindi angkop para sa BASIC:

  1. Una, ang pagkakaroon ng isang compiler na nagpapahintulot sa iyo na i-download ang Pascal sa anumang platform.
  2. Pangalawa, ang lahat ng mga bersyon ng program na ito ay magkatugma sa bawat isa.
  3. Pangatlo, tinutulungan ng mga structured na uri ng data ang programmer na tumpak na mabuo ang kinakailangang algorithm para sa paglutas ng isang praktikal na problema, habang pinoprotektahan ito.
  4. Pang-apat, ang kalinawan at lohika ng interface ng programa: lahat ng mga utos ay simple at naiintindihan.
  5. Ikalima, ang paglipat sa isa pang mas mataas na antas ng programming language ay medyo simple.

Mga halimbawang programa sa PascalABC.NET

Kabuuan ng mga ipinasok na integer

Produkto ng mga integer

Ilan ang odd sa mga n ipinasok?

Di-wastong proteksyon ng input

Konklusyon ng 10 unang kapangyarihan ng dalawa

Hanapin ang kabuuan ng mga digit ng isang positive integer m

Pag-factor ng isang numero sa mga pangunahing kadahilanan

Pascal para sa mga Nagsisimula - Mga Pangunahing Konsepto

Tingnan natin ang mga pangunahing konsepto na makakatulong sa wastong pagsulat ng isang programa sa wikang ito.

Lugar ng trabaho

Ano ang hitsura ng workspace?

Ngayon tingnan natin ang mga pangunahing kaalaman: ang alpabeto at istraktura.

Alpabeto Pascal

Ano ang kailangan mong malaman? Ang alpabeto ay isang hanay ng mga simbolo na kailangan kapag bumubuo ng isang programa.

Ano ang kasama nila:

  1. Malaking titik sa Latin, maliliit na titik (A, B, C....a,b,c).
  2. Mga simbolo ng aritmetika (0, 1, 2...).
  3. Espesyal na mga character (bantas, panaklong, panipi, arithmetic sign, atbp.).
  4. Mga hindi mahahati na simbolo (:=, ˃=…).
  5. Mga salitang gamit:
  • at – at;
  • hanay – hanay;
  • simulan – simula;
  • gawin – isakatuparan;
  • iba pa - kung hindi man;
  • para sa – para sa;
  • kung – kung;
  • ng – mula sa;
  • o – o;
  • pamamaraan – pamamaraan;
  • programa – programa;
  • ulitin – ulitin;
  • pagkatapos - iyon;
  • sa – bago;
  • hanggang – hanggang (= habang);
  • var – variable;
  • habang - sa ngayon.

Mangyaring tandaan: ang mga constant at operation ay hindi dapat magkaroon ng parehong mga pangalan tulad ng mga function na salita (anumang haba).

Istraktura ng programa

Kaya, ano ang kasama sa "hierarchy" ng programang ito?

Ayon sa istraktura nito, ang wikang ito ay nahahati sa 3 mga seksyon:

  • Pangalan;
  • data;
  • mga aksyon.

Mangyaring tandaan: Dapat na nakalista ang mga variable na pinaghihiwalay ng mga kuwit, at pagkatapos ay dapat ipahiwatig ang uri ng mga ito sa pamamagitan ng ":". Kumpletuhin ang nakasulat na salita ng ";".

Nagsisimula ang mga aksyon sa "simula" at nagtatapos sa "pagtatapos" na may tuldok.

Ang istraktura ay maaaring kinakatawan tulad ng sumusunod:

Sa pamamagitan ng paraan, ang mga operator ay pinaghihiwalay ng mga semicolon.

Ang mga operator ay nagsusulat, nagsusulat, nagbasa, nagbabasa

Alamin natin kung paano nangyayari ang output at input ng impormasyon.

Konklusyon

Walang mga output operator tulad nito sa wikang ito, ngunit may mga espesyal na salita na makakatulong sa paglunsad ng mga kinakailangang function. Ito sumulat, sumulatln.

Ano ang kanilang pangunahing pagkakaiba? Kapag nagpapasok o naglalabas ng kasunod na impormasyon pagkatapos ng mga ito: sa unang kaso, ang kasunod na impormasyon ay ilalabas sa parehong linya kung saan nakasulat ang pahayag. Ngunit sa pangalawa - sa susunod.

Pumasok

Mayroon ding mga salita para sa input: basahin, basahinln(=readkey).

Ang mga ito ay naiiba sa bawat isa sa parehong paraan tulad ng mga nakaraang pahayag (sa output).

Integer na uri ng data

Mayroong 3 pangunahing uri:

  1. Integer.
  2. Byte.
  3. Longint.

Nagsasagawa rin sila ng mga simpleng aksyon:

  • karagdagan - "+";
  • pagbabawas – “-”;
  • pagpaparami - "*";
  • dibisyon – “div”.

Bilang karagdagan, pinapayagan na gumawa ng mga relasyon at paghahambing (mas malaki sa o katumbas ng - ˃ =).

Mga totoong uri ng data

Kasama sa mga naturang variable ang mga fractional na numero (halimbawa, pi). Dito sila ay tinatawag na tunay.

Ano ang dapat tandaan? Upang maglagay ng fractional formula, dapat kang gumamit ng tuldok sa halip na isang kuwit. Upang magsulat ng mga kapangyarihan (x * 10 y), 10 ay pinalitan ng E at ang numero ay may notasyon:

Gamit ang mga ito maaari mong gawin ang parehong pinakasimpleng mga operasyon sa aritmetika at mas kumplikado:

  • square root - sqrt;
  • ganap na halaga - abs;
  • quadratic function - sqr;
  • sine – kasalanan;
  • cosine – cos;
  • arctangent – ​​arctan;
  • natural logarithm – ln;
  • exponent – ​​exp.

Pagproseso ng data

Bilang karagdagan sa mga function na nakalista sa itaas (sa nakaraang 2 talata), mayroong iba pa:

  • integer na bahagi ng numero – int;
  • fractional na bahagi ng isang numero – frac;
  • pagkuha ng integer na bahagi ng isang numero - trunc;
  • pag-ikot sa pinakamalapit na buong numero - bilog;
  • ordinal type conversion – ord;
  • pag-convert ng code sa uri ng character – chr;
  • pagpapasiya ng dating halaga ng isang dami – pred;
  • pagpapasiya ng kasunod na halaga ng isang dami – succ.

Mga operasyon sa matematika

Sinasaklaw ang mga pag-andar at pagpapatakbo ng matematika kapag nag-parse ng integer at totoong data.

Tumutok tayo sa mga uri ng mga constant at variable. Ano sila?

Kasama sa mga simple ang mga subtype:

  • integers – integer;
  • lohikal – boolean;
  • karakter – char;
  • mabilang;
  • pagitan;
  • totoo

Ang mga string ay isinusulat gamit ang string command. Ang mga sanggunian ay ipinakita sa naaangkop na anyo.

Ang mga nakabalangkas ay nahahati sa:

  • arrays – array;
  • talaan – talaan;
  • set – set;
  • file – file.

Ang bawat uri ay may sariling hanay ng mga operasyon.

Mga tuntunin

Kung mayroong mga alternatibong utos at pag-andar, pagkatapos ay gamitin ang kung, kung gayon, ibang mga pahayag na maaari mong isulat ang mga kinakailangang utos upang malutas ang isang praktikal na problema.

Ang diagram ay ipinapakita sa figure sa ibaba.

Mga lohikal na operasyon

Ang mga operasyon ay batay sa katotohanan ng isang katotohanan o kasinungalingan nito.

Mayroong 3 uri ng naturang mga pag-andar:

  1. Kakaiba – kung ang numero ay kakaiba, pagkatapos ay totoo (vice versa – mali).
  2. Eoln – totoo sa dulo ng linya (sa ibang lugar – mali).
  3. Eof – true sa dulo ng file (sa ibang lugar – false).

Mga function ng kontrol ng programa

Ano ang iba pang mga pamamaraan na umiiral:

  • Inc – pagtaas ng bilang;
  • Clrscr – pag-clear ng mga nakaraang resulta ng programa;
  • Gumagamit ng crt - ilunsad ang clscr;
  • Haba - ibalik ang haba ng string;
  • Val – i-convert ang isang string sa isang numero;
  • Pos – hanapin ang unang pagbabago sa string;
  • Magtalaga – pag-uugnay ng variable sa isang file;
  • Upcase - pag-convert ng mga maliliit na titik sa mga malalaking titik.

Konklusyon

Kaya, upang maging isang mahusay na programmer, kailangan mo munang matutunan ang mga pangunahing kaalaman. Ang Pascal ay ang pinakamahusay na pagpipilian para dito.

Ang kapaligiran ng programming ng PascalABC ay ginagamit bilang pangunahing edukasyon programming para sa mga mag-aaral sa wikang programming ng Pascal. Ang kapaligiran ay naglalaman ng makapangyarihan sistema ng tulong at isang built-in na libro ng problema na may mga awtomatikong nasuri na gawain. Papayagan ka nitong mabilis na matutunan kung paano magsulat ng mga programa sa Pascal.

Ang libreng mini-bersyon ng libro ng problema ay naglalaman ng 270 mga gawain sa lahat ng mga pangunahing seksyon. Ito ay sapat na para sa independiyenteng karunungan ng paunang antas ng programming. Maaari mong i-download ang bersyon ng Pascal 3.0 nang libre dito . Sa kasalukuyan ang bersyon na ito ay hindi na suportado at ang mga developer ay nagtatrabaho sa PascalABC.Net. Kaya simulan na natin pascal abc edukasyon.

Hitsura ng interface ng programa ng PascalABC

Ang window ng programming environment ay mukhang karaniwan. Naglalaman ito ng menu bar (1), sa ibaba ay isang quick access toolbar (2). Susunod ay ang nagtatrabaho na lugar ng editor ng code.


Hitsura interface ng programa

Ang mga label ay ipinapakita sa itaas buksan ang mga file na may mga teksto ng programa (3). Ang sabay-sabay na trabaho sa ilang mga teksto ay lubos na nagpapadali sa paglikha ng mga programa. Maaari mong kopyahin at ilipat ang mga seksyon ng code mula sa isang file patungo sa isa pa (4).

Sa mode ng pagpapatupad ng programa, makikita mo ang input ng data at output zone ng mga resulta (5).

Nagtatrabaho sa PascalABC

Pagkatapos i-type ang program, kailangan mong i-save ito at magtakda ng pangalan. Upang gawin ito maaari mong gamitin ang command File-I-save Bilang o ang kaukulang button sa toolbar.

Magbigay ng pangalan na iba sa default. Gagawin nitong mas madali para sa iyo na mahanap ang code na kailangan mo sa hinaharap.

Ilunsad

Ngayon ay maaari mong patakbuhin ang programa upang suriin ang operasyon nito. Simulan ang utos Programa -Tumakbo o ang berdeng tatsulok na button sa toolbar. Ang code ay pinagsama-sama bago tumakbo. Kung may mga error sa code, may lalabas na pulang linya na naglalarawan sa error.


Mga error sa programa

Ipapahiwatig ng cursor ang lokasyon ng posibleng error, ngunit hindi ito palaging nag-tutugma sa paglalarawan nito. Halimbawa, sa screenshot sa itaas, ang cursor ay tumuturo sa Y variable, ngunit ang error ay nasa linya sa itaas. May nawawalang karakter na semicolon, na dapat naroroon sa dulo ng bawat isa command line. Pagkatapos iwasto ang error, patakbuhin muli ang program.

Tumigil ka

Ang programa ay hihinto kapag ito ay nakumpleto. Ngunit maaaring may mga kaso na ang programa ay dapat na puwersahang ihinto. Upang gawin ito, mayroong isang "Stop" na button sa toolbar o isang command Programa - Tapusin.

Mga setting text editor abc pascal

Bilang default, nakatakda ang code editor sa pinakamababang laki ng font. Kung nakakaranas ka ng kakulangan sa ginhawa kapag nagta-type, pagkatapos ay pumunta sa menu Serbisyo - Mga Setting ng Editor. Itakda ang nais na laki ng font.


Pagse-set up ng Pascal ABC editor

Paggawa gamit ang isang electronic problem book

Imposibleng matutunan kung paano magsulat ng mga programang pascal nang walang pagsasanay. Ang sistema ng awtomatikong pagsubok ng programa para sa Pascal ay tutulong sa iyo na makabisado ang programming sa wikang Pascal.
Pumunta sa menu ng Mga Tool - Lumikha ng template ng programa. Magbubukas ang sumusunod na window (tingnan sa ibaba)

Dito kailangan mong isulat ang pangalan ng pangkat ng gawain. Tumingin kami sa listahan at pumasok ang nais na pangkat eksakto tulad ng nakasulat sa listahan ng window. Pagkatapos tukuyin ang pangalan ng pangkat ng gawain, magbabago ang prompt.

Ngayon ang bilang ng mga magagamit na gawain sa pangkat na ito ay ipahiwatig o ang mga bilang ng mga partikular na gawain ay ililista. Nagdagdag ka ng numero sa pangalan ng grupo nang walang puwang. Pindutin ang pindutan. Magbubukas ang isang tab na may napiling gawain. Ang bagong file ay maglalaman ng awtomatikong nabuong code. Hindi ito matatanggal.

Ngayon upang tingnan ang teksto ng gawain, mag-click sa pindutan ng paglulunsad ng programa.

Tumingin sa bintana sa itaas. Ito ay nahahati sa tatlong bahagi. Ang unang bahagi ay nagbibigay ng kondisyon ng gawain kung saan kailangan mong magsulat ng code. Sa ikalawang bahagi, ang mga numero ay ipinahiwatig sa dilaw. Ito ang pinagmulang data na nabuo ng libro ng problema. Babasahin sila. Ang ikatlong bahagi ay nagpapakita ng resulta na makukuha kapag isinasagawa ang iyong programa. Ngayon isara ang window at idagdag ang code.

Simulan na natin ang execution. Kung walang mga error, makakakuha kami ng isang window.

Kailangan mong patakbuhin ang programa nang maraming beses upang makapasa sa lahat ng mga pagsubok. At pagkatapos lamang maipasa ang lahat ng mga pagsubok ang gawain ay makakatanggap ng katayuan na "Nakumpleto ang gawain!" Ngayon ay maaari kang magpatuloy sa susunod na gawain.

2nd ed. - St. Petersburg: 2011. - 320Sa.

Ang aklat na ito ay hindi isang aklat-aralin, ngunit sa halip ay isang katulong sa pag-master ng wikang programming ng Pascal, na ipinakilala sa lahat ng mga mag-aaral sa mga aralin sa computer science. Binubuo ito ng mga aralin na nakatuon sa praktikal na programming at mga isyu sa paglutas ng problema. Maraming mga halimbawa ang nagbibigay-daan sa iyo upang mas maunawaan kung paano bumuo ng isang algorithm, isulat ang iyong sariling programa, at i-format nang tama ang teksto nito. Ang mga tip at tala ay tumutulong sa mambabasa na bigyang-pansin ang mahahalagang detalye, na nagbibigay-daan sa iyong maiwasan ang mga pitfalls at magsulat ng mga programa nang mas mahusay. Ang libro ay inihanda ng mga guro ng computer science sa paaralan na may malawak na karanasan ng maraming taon praktikal na gawain

. Ang ikalawang edisyon ay nagdaragdag ng ilang bagong kabanata sa mga talaan, mga dynamic na variable, ang stack, mga pila, at mga listahan. Ang isa sa mga pinakamahirap na paksa sa programming ay sakop din - ang pagbuo ng mga recursive algorithm. Format: pdf

(2011, 2nd ed., 320 pp.) Sukat:

14.5 MB Panoorin, i-download:

docs.google.com
Nilalaman
Paunang salita sa ikalawang edisyon 15
Panimula 16
Mula sa publisher 16
PAKSA 1. Paano magsulat ng isang simpleng programa sa Pascal 17
Aralin 1.1. Nagpapakita kami ng mensahe sa display screen 18
Aralin 1.2. Paano i-install ang program na ito sa isang computer 19 Mga yugto ng paglikha 20
programa sa kompyuter
Aralin 1.3. Pag-format ng teksto sa screen 28
Konklusyon 34
Mga tanong sa pagsusulit 34
PAKSA 2. Paano isama ang numerical data sa iyong trabaho 36
Aralin 2.1. Magsimula tayo sa isang simpleng bagay: ang mga integer 37
I-type ang Integer. Operator ng pagtatalaga. Pagpapakita 38
Mga operasyon na may uri ng Integer 40
Mga karaniwang function ng uri ng Integer 42
Paano kinakatawan ang mga variable ng uri ng integer
sa memorya ng computer 43
Aralin 2.2. Kasama namin ang mga tunay na numero 45 sa trabaho
Paglalarawan ng totoong uri ng data (tunay) 45
Mga format para sa pagtatala ng mga tunay na variable 46
Materyal na operasyon 46
Mga karaniwang function ng uri ng real 47
Pagsulat ng Math Expressions 48
Paano kinakatawan ang tunay na uri ng mga variable sa memorya ng computer 50
Aralin 2.3. Paano pagsamahin ang mga variable ng integer at totoong uri 51
Uri ng Conversion 51
Mga panuntunang priyoridad sa mga ginawang aksyon 52
Mga aksyon sa data iba't ibang uri 53
Aralin 2.4. Input at output ng data 56
Pagpasok ng mga variable mula sa keyboard 57
Magandang display 57
Pagtatakda ng mga variable na halaga gamit ang isang random na sensor ng numero 61
Aralin 2.5. Bakit kailangan ang mga constant sa isang programa? 62
Konklusyon 64
Mga tanong sa pagsusulit 64
PAKSANG-ARALIN 3. Pag-aaral na gumamit ng mga simbolo 66
Aralin 3.1. Paano naiintindihan ng computer ang mga simbolo 67
ASCII 67 code table
Paglalarawan ng uri ng Char at mga karaniwang function 68
Aralin 3.2. Ang uri ng Char ay isang uri ng ordinal! 70
Konklusyon 71
Mga tanong sa pagsusulit 72
PAKSA 4. Si George Boole at ang kanyang lohika 73
Aralin 4.1. Kailangan ng isa pang uri - lohikal! 74
Uri ng data ng Boolean 75
Mga ugnayang operasyon 75
Boolean I/O 76
Aralin 4.2. Lohikal (Boolean) na mga pagpapatakbo 76
Lohikal na pagpaparami (conjunction) 76
Lohikal na karagdagan (disjunction) 77
Eksklusibo O (dagdag na modulo 2) 77
Lohikal na negasyon (inversion) 78
Paggamit ng mga lohikal na operasyon sa programa 78
Priyoridad ng lohikal na operasyon 80
Konklusyon 81
Mga tanong sa pagsusulit 81
PAKSA 5. Pagsusuri ng sitwasyon at pagkakasunod-sunod ng pagpapatupad ng utos 82
Aralin 5.1. Sinusuri ang mga kondisyon at sumasanga sa Algorithm 83
Buo at bahagyang anyo ng pahayag na kung 84
Disenyo ng mga programa 86
Aralin 5.2. Mga bloke ng operator 88
Aralin 5.3. Pagsasanga ayon sa ilang kundisyon (case statement) 92
Konklusyon 96
Mga tanong sa pagsusulit 96
PAKSA 6. Paulit-ulit na mga aksyon 98
Aralin 6.1. Loop na pahayag para sa 99
Operator para sa may sequential increment ng counter 100 Operator para sa may sequential decrement ng counter 101
Aralin 6.2. Paggamit ng mga loop na may counter 101
Ikot sa loob ng isang cycle 102
Bakas 103
Kinakalkula ang kabuuan ng serye 105
Konklusyon 108
Mga tanong sa pagsusulit 109
PAKSA 7. Mga loop na may kondisyon 110
Aralin 7.1. Loop na may precondition 111
Paglalarawan ng loop na may precondition 111
Tinatayang pagkalkula ng kabuuan ng isang walang katapusang serye 112
Pagtaas ng numero sa tinukoy na integer power 115
Aralin 7.2. Loop na may postcondition 119
Paglalarawan ng isang loop na may postcondition 120
Gamit ang repeat at while loops 120
Relativity ng pagpili ng while at repeat operator 123
Konklusyon 129
Mga tanong sa pagsusulit 129
PAKSA 8. Mga Array - uri ng structured data 131
Aralin 8.1. Pag-iimbak ng mga katulad na data sa anyo ng isang talahanayan 132
Mga pangunahing hakbang para sa pagtatrabaho sa mga array 133
Paglalarawan ng isang array sa Pascal 133
Pagpuno ng array ng mga random na numero at pagpapakita ng array sa screen 134
Paglikha ng Custom na Uri ng Data 137
Paghahanap ng maximum na elemento ng array 140
Kinakalkula ang kabuuan at bilang ng mga elemento ng array na may ibinigay na mga katangian 144
Aralin 8.2. Maghanap sa array 148
Pagtukoy sa pagkakaroon ng negatibong elemento sa isang array gamit ang flag 148
Pagtukoy sa pagkakaroon ng mga negatibong elemento sa isang array sa pamamagitan ng pagkalkula ng kanilang numero 149
Paghahanap ng bilang ng negatibong elemento ng array 150
Aralin 8.3. Dalawang-dimensional na array 154
Konklusyon 156
Mga tanong sa pagsusulit 157
PAKSA 9. Mga pantulong na algorithm. Mga pamamaraan at pag-andar. Structured programming 1 58
Aralin 9.1. Pagdidisenyo ng top-down na algorithm 159
Praktikal na problema gamit ang mga auxiliary algorithm 160
Aralin 9.2. Halimbawa ng pagtatrabaho sa function: Paghahanap ng maximum na elemento 167
Konklusyon 168
Mga tanong sa pagsusulit 169
PAKSA 10. Paano gamitin ang mga string ng character 170
Aralin 10.1. Paggawa gamit ang mga string ng mga character: i-type ang String 171
Paglalarawan ng isang string variable 171
Mga pangunahing operasyon na may 172 mga string
Aralin 10.2. Ilang mga function at pamamaraan ng Pascal para sa pagtatrabaho sa mga string 173
Paggamit ng Library String Routines 173
Konklusyon 175
Mga tanong sa pagsusulit 175
PAKSA 11. Mga pamamaraan at paggana na may mga parameter 176
Aralin 11.1. Mga simpleng halimbawa gamit ang mga subroutine na may mga parameter 177
Ang pinakasimpleng pamamaraan na may mga parameter 177
Pormal at aktwal na mga parameter 179
Ang pinakasimpleng function na may mga parameter 179
Aralin 11.2. Mga pamamaraan para sa pagpasa ng mga parameter 181
Konklusyon 183
Mga tanong sa pagsusulit 184
PAKSA 12. Mga File: pag-save ng mga resulta ng trabaho hanggang sa susunod na pagkakataon 185
Aralin 12.1. Paano gumawa ng text file 186
Pagbukas ng file para sa pagbabasa 186
Pagbukas ng file para sa pagsusulat 188
Aralin 12.2. Pag-iimbak ng dalawang-dimensional na hanay ng mga numero sa text file 192
Pag-save ng Numeric Data sa isang Text File 192
Pag-save ng hanay ng mga numero sa isang text file 192
Pagdaragdag ng impormasyon sa dulo ng file 196
Konklusyon 197
Mga tanong sa pagsusulit 197
Paksa 13. Graphical na mode ng operasyon. Modyul ng graph 199
Aralin 13.1. I-on graphic mode gumagana 200
Mga tampok ng pagtatrabaho sa graphics 200
Lumipat sa graphics mode ng video adapter 201
Aralin 13.2. Patuloy naming ginalugad ang mga kakayahan ng module ng Graph 203
Pagguhit ng mga linya gamit ang Graph 203 module
Pagguhit ng mga bilog gamit ang Graph 205 module
Konklusyon 206
Mga tanong sa pagsusulit 207
Paksa 14. Mga operator na nagbabago sa natural na daloy ng programa 208
Aralin 14.1. Gamit ang goto 210 unconditional jump operator
Aralin 14.2. Mga pahayag na nagbabago sa daloy ng isang loop 213
break na pahayag 213
Ipagpatuloy ang operator 214
Konklusyon 215
Mga tanong sa pagsusulit 215
Paksa 15. Pagpapangkat ng datos: mga talaan 216
Aralin 15.1. Paglalarawan ng talaan ng uri ng data 218
Aralin 15.2. Kailan at paano matalinong gumamit ng 220 na talaan
Paglikha ng iyong sariling uri ng data - entry 220
Array ng mga talaan 220
Sumali sa operator sa 221
Halimbawa ng pagpili ng istruktura ng data 223
Mga talaan ng mga talaan 224
Konklusyon 225
Mga tanong at takdang-aralin sa pagsusulit 225
Paksa 16. Mga dinamikong variable 226
Aralin 16.1. Paglalaan ng memorya 227
Aralin 16.2. Mga Address 229
Aralin 16.3. Palatandaan 230
Mga pointer sa mga indibidwal na variable 230
Mga pointer sa variable block 232
Aralin 16.4. Dynamic na paglalaan ng memorya 232
Bago at Itapon 233
Dynamic na paglalaan ng memory para sa mga array 235
GetMem at FreeMem 236
Pag-access sa mga elemento ng isang array na ginawang dynamic na 237
Variable length array 238
Konklusyon 241
Mga tanong sa pagsusulit 242
Paksa 17. Mga istruktura ng dinamikong data. Salansan 244
Aralin 17.1. Ilarawan natin ang uri ng data 245
Aralin 17.2. Paglikha ng stack at mga pangunahing pagpapatakbo ng stack 247
Pagdaragdag ng elemento sa stack (Push) 248
Pag-pop ng isang elemento mula sa stack (Pop) 251
Sinusuri ang stack para sa kawalan ng laman (StacklsEmpty) 252
Aralin 17.3. Gamit ang 253 stack
Pagprograma ng Stack Gamit ang 255 Array
Konklusyon 256
Mga tanong at takdang-aralin sa pagsusulit 256
Paksa 18. Dynamic na istruktura ng data. Pila 258
Aralin 18.1. Prinsipyo ng pagpapatakbo at paglalarawan ng uri ng data 259
Aralin 18.2. Mga pangunahing pagpapatakbo ng pila 261
Pagdaragdag ng elemento sa queue (EnQueue) 261
Pag-alis ng elemento mula sa isang queue (DeQueue) 263
Sinusuri ang queue para sa kawalan ng laman (QueuelsEmpty) 264
Aralin 18.3. Gamit ang Queue 264
Pagprograma ng Queue Gamit ang Array 267
Konklusyon 269
Mga tanong sa pagsusulit 269
Paksa 19. Mga istruktura ng dinamikong data. One-way na listahan 270
Aralin 19.1. Paglalarawan ng uri ng data at prinsipyo ng pagpapatakbo 271
Aralin 19.2. Mga pangunahing operasyon na may one-way na listahan 272
Sunud-sunod na pagtingin sa lahat ng elemento ng listahan 272
Paglalagay ng elemento sa isang listahan 273
Pag-alis ng elemento mula sa isang listahan 275
Aralin 19.3. Pagproseso ng listahan 276
Ang pagiging posible ng paggamit ng one-way na listahan 278
Konklusyon 280
Mga tanong sa pagsusulit 280
Paksa 20. Recursion 281
Aralin 20.1. Paglalarawan ng prinsipyo 282
Aralin 20.2. Mga Tore ng Hanoi 285
Aralin 20.3. Istraktura ng paulit-ulit na subroutine 287
Aralin 20.4. Isang halimbawa ng paulit-ulit na solusyon sa hindi paulit-ulit na problema 288
Aralin 20.5. Isang halimbawa ng paulit-ulit na solusyon sa paulit-ulit na problema 289
Konklusyon 291
Mga tanong sa pagsusulit 291
Appendix 1. Mga elemento ng block diagram 292
Appendix 2. Problema 295
Integer. Paglalarawan. Pumasok. Konklusyon. Mga operasyon 296
totoo. Paglalarawan. Pumasok. Konklusyon. Mga operasyon at pag-andar 296
totoo. Pagsulat at Pagsusuri ng mga Ekspresyon 297
Char. Paglalarawan. Pumasok. Konklusyon. Mga Pag-andar 298
Boolean. Pagsulat ng mga Ekspresyon 298
Boolean. Pagsusuri ng mga Ekspresyon 299
Kung. Mga simpleng paghahambing. Min/max/average 300
Kung. Mga equation at hindi pagkakapantay-pantay na may 300 parameter
Para sa. Mga paglilipat 300
Para sa. Mga Pagkalkula gamit ang Loop Counter 301
Para sa. Overkill sa mga paghahambing 302
Habang-Ulitin. Maghanap sa 302
Habang-Ulitin. Mga hilera 303
Mga graphic. Tuwid 303
Mga graphic. Mga bilog 304
Mga array. Pagpuno, pag-withdraw, halaga/dami 305
Mga array. Mga Permutasyon 305
Mga array. Maghanap sa 306
Mga array. Mga tseke 307
Mga array. Pinakamataas na 307
Mga subroutine na walang mga parameter 307
Mga linya. Bahagi I 308
Mga linya. Bahagi II 309
Mga subroutine na may mga parameter. Bahagi I 309
Mga subroutine na may mga parameter. Bahagi II 310
Mga subroutine na may mga parameter. Bahagi III 310
Mga file 311
Unidirectional na listahan 312
Recursion 313

Matapos ang paglabas ng unang edisyon ng aklat, ang aming mga kasamahan at mag-aaral ay nagsimulang makipag-ugnayan sa amin nang higit sa isang kahilingan na dagdagan ang unang edisyon ng impormasyon tungkol sa mga istruktura ng data na pinakapinag-aralan at hinihiling. Sa edisyong ito nagdagdag kami ng ilang mga kabanata sa mga talaan, mga dynamic na variable, stack, queue at mga listahan. Sinubukan din naming masakop ang isa sa pinakamahirap na paksa sa programming - ang pagbuo ng mga recursive algorithm.
Sa application, nagpasya kaming iwanan ang koleksyon ng araling-bahay na may maraming mga pagpipilian sa ilang mga paksa. Sa halip, nagsama kami ng malaking bilang ng mga pampakay na gawain sa application, na nakaayos sa mga bloke ng 5-8 na gawain. Ang mga gawain sa bawat bloke ay nakaayos mula sa simple hanggang sa kumplikado. Ginagamit namin ang mga ito sa aming mga aralin upang ayusin ang mga praktikal na klase habang pinapalakas ang teoretikal na materyal (isang aralin - isang bloke).
Ipinapahayag ng mga may-akda ang kanilang pinakamalalim na pasasalamat sa isa sa kanilang pinakamahusay na mga mag-aaral, Associate Professor ng Department of Security mga sistema ng impormasyon SPbSUAP, Ph.D. Evgeny Mikhailovich Linsky para sa suporta, marami kapaki-pakinabang na mga tip at malaking tulong sa paggawa sa ikalawang edisyon ng aklat.