Array sa "Pascal". Mga programa para sa mga array sa Pascal

Talaan ng mga Nilalaman:

Array sa "Pascal". Mga programa para sa mga array sa Pascal
Array sa "Pascal". Mga programa para sa mga array sa Pascal
Anonim

Taon-taon tumataas ang interes sa programming. At kung sa mga institusyong nag-specialize sa pagsulat ng mga programa ay umaasa sila sa isang programming language tulad ng C ++, kung gayon sa mga paaralan at teknikal na paaralan ang mga mag-aaral ay nakikilala ang "Pascal". At na sa batayan ng wikang ito, sinimulan nilang maunawaan ang programming sa pamamagitan ng paggamit ng Delphi software. Dapat pansinin kaagad na ang mga programming language na ito ay nagbibigay ng isang malaking puwang para sa pagpapakita ng kanilang imahinasyon. At kung sa tulong ng wikang Pascal ay maaari kang maging pamilyar sa mga pangunahing konsepto ng programming, kung gayon sa Delphi maaari ka nang magsulat ng isang buong programa. At ang isang mahalagang lugar sa pagsulat ng mga programa ay kung minsan ay inookupahan ng paglutas ng mga array sa "Pascal".

Ang pagkakaroon ng malaking bilang ng ibang mga variable

array sa Pascal
array sa Pascal

Maraming iba't ibang variable sa isang programming language, na nailalarawan sa pagkakaroon ng isang value lang. Nagagawa nilang mag-imbak ng isang halaga na may partikular na uri. Ang mga variable ng string ay ang pagbubukod. Sila ayay isang koleksyon ng mga data kung saan ang uri ng character ay katangian. Ngunit kahit na ang mga naturang variable ay karaniwang isinasaalang-alang mula sa posisyon ng isang hiwalay na halaga.

Hindi lihim na sa tulong ng isang computer ay maaari mong makabuluhang bawasan ang oras upang maisagawa ang ilang partikular na gawaing nauugnay sa malaking halaga ng data. Ngunit paano, kapag ginagamit lamang ang mga variable na may mga uri na kilala sa mga tao, posible bang iimbak ang mga resulta ng trabaho sa memorya, at iproseso din ang mga data na iyon na naglalaman ng malaking bilang ng mga hilera? Ang mga ganitong gawain ay karaniwan sa anumang larangan ng aktibidad.

Siyempre, maaari kang palaging maglagay ng maraming variable hangga't kailangan mo upang makamit ang iyong mga layunin. Maaari mo ring tukuyin ang ilang mga halaga para sa kanila. Ngunit ang code ng programa ay tataas lamang mula dito. Mahirap basahin ang code na may malaking bilang ng mga linya. Lalo na kapag kailangang maghanap ng mga error.

Ayon, naisip ng mga programmer ang tanong na ito. Iyon ang dahilan kung bakit ang mga wika na binuo sa ngayon ay may mga variable na ginagawang posible na mag-imbak ng isang malaking halaga ng data sa kanilang sarili. Ang array sa "Pascal" ay nagbago ng malaki sa diskarte sa programming. Samakatuwid, ito ay itinuturing na isang mahalagang variable sa isang programming language.

Ang paggamit ng mga array ay maaaring mabawasan nang husto ang laki ng code

Sa ilalim ng terminong ito ay nakatago ang isang nakaayos na pagkakasunud-sunod ng data, na nailalarawan sa pamamagitan ng isang uri. Bilang karagdagan, ang lahat ng data na ito ay nakakakuha ng parehong pangalan. Dapat dinDapat tandaan na maraming bagay sa totoong mundo ang maaaring magkasya sa kahulugang ito: mga diksyunaryo, cartoon, at marami pang iba. Gayunpaman, ang pinakamadaling paraan upang ipakita ang isang array sa "Pascal" ay nasa anyo ng isang uri ng talahanayan. Ang bawat indibidwal na cell ay naglalaman ng isang variable. Gamit ang mga coordinate, matutukoy mo ang posisyon ng variable na sasakupin nito sa pangkalahatang talahanayan.

Ano ang ibig sabihin ng one-dimensional array?

arrays sa pascal
arrays sa pascal

Ang pinakasimpleng talahanayan ay ang linear. Sa array na ito, upang matukoy ang lokasyon ng parameter, sapat na upang tukuyin lamang ang isang numero. Ang mga mas kumplikadong array ay nabuo batay sa mga ito.

Upang ilarawan ang mga one-dimensional na array sa "Pascal", ilagay lang ang sumusunod na code: Uri ng Array ng.

Ang mga numero ay ang mga variable na maaaring magkaroon ng ordinal na uri. Kapag tinukoy ang isang saklaw, ito ay nagkakahalaga ng pag-unawa na ang paunang numero ay hindi maaaring mas mataas kaysa sa panghuling numero. Ang uri na mayroon ang mga elemento ng array ay maaaring maging anumang bagay - alinman sa pamantayan o naunang inilarawan. Ang pagpili ay depende sa pangangailangang lutasin ang isang partikular na problema.

Paano inilarawan ang isang linear array?

Posibleng ilarawan kaagad ang mga one-dimensional na array sa "Pascal". Dapat itong gawin sa isang espesyal na seksyon, na kinakailangan para sa partikular na pamamaraang ito. Kakailanganin mong ilagay ang sumusunod na code: Var: Array Ng.

Upang maunawaan kung paano mo mailalarawan ang isang array sa "Pascal", dapat mong ilagay ang sumusunod na code:

- Var

- S, VV: Array[5..50] Of Real;

- K: Array[‘C’.. ‘R’] Ng Integer;

- Z: Array [-10..10] Ng Salita;

- E: Array [3..30] Of Real.

Sa halimbawang ito, ang mga variable na S, VV at T ay isang array ng mga numerong iyon na totoo. Itinatago ng variable na K ang uri ng character at ang mga elementong iyon. Alin ang mga integer. Ang Z array ay nag-iimbak ng mga numero na ang uri ay Word.

Sa lahat ng mga pagkilos na maaaring gamitin kapag nagtatrabaho sa isang array, ang pagtatalaga ay maaaring makilala. Ang buong talahanayan ay maaaring sumailalim dito. Halimbawa, S:=VV. Ngunit dapat itong maunawaan na ang mga pagpapatakbo ng pagtatalaga ay maaari lamang sumailalim sa isang array sa "Pascal" na may partikular na uri.

Wala nang mga operasyong maaaring gawin sa buong array nang sabay-sabay. Gayunpaman, maaari kang magtrabaho kasama ang mga elemento sa parehong paraan tulad ng iba pang mga pangunahing numero na may isang tiyak na uri. Upang sumangguni sa isang indibidwal na parameter, dapat mong tukuyin ang pangalan ng array. Sa pamamagitan ng paggamit ng mga square bracket, dapat mong matukoy ang index na katangian ng nais na elemento. Halimbawa: K[12].

Mga pangunahing pagkakaiba sa pagitan ng mga array at iba pang variable

gawain pascal arrays
gawain pascal arrays

Ang pangunahing pagkakaiba sa pagitan ng mga bahagi ng talahanayan at mga simpleng variable ay ang posibleng ilagay sa mga bracket hindi lamang ang halaga ng index, kundi pati na rin ang isang expression na maaaring humantong sa nais na halaga. Ang isang halimbawa ng hindi direktang pagtugon ay maaaring: V[K]. Sa kasong ito, ang variable K ay tumatagal sa isang tiyak na halaga. Mula ditosumusunod ito na maaari kang gumamit ng loop kapag pinupunan, pinoproseso at pagpi-print ng array.

Ang anyo ng organisasyong ito ay maaaring mangyari sa kaso ng mga string variable na sapat na malapit sa kanilang mga katangian sa mga array na may uri ng Char. Ngunit mayroon ding mga pagkakaiba. Ang mga ito ay ang mga sumusunod:

  1. Ang mga variable ng string ay palaging maaaring ilagay mula sa keyboard at i-print sa screen.
  2. Ang mga variable ng string ay limitado sa haba. Maaari kang magpasok ng maximum na 255 character. Ang kritikal na laki ng array ay 64 kb.

Anong mga paraan ang maaaring gamitin upang ipakita ang data ng array sa screen?

Dapat mong bigyang pansin ang paraan ng pagpapakita ng mga nilalaman ng array. Mayroong ilan.

  1. Writeln (A[1], A[2], A[3]). Ang ganitong halimbawa, bagama't primitive, ay nagagawang ipakita kung paano mo direktang maa-access ang bawat indibidwal na elemento na likas sa talahanayan. Gayunpaman, hindi makikita rito ang ilan sa mga pakinabang ng mga array ng Pascal kaysa sa mga simpleng variable.
  2. Program A1;

    Var B: Array [1..10] Of Integer;

    K: Integer;

    Simulan

    Para sa K:=1 Hanggang 10 Gawin {This command loops with parameter }

    Readln(A[K]); {A[I] is being entered using the keyboard }

    For K:=10 Downto 1 Do {The table is being printed in reverse order}

    Write(A[K], 'VVV') End.

Isang katulad na code ng program para sa mga arrays sa "Pascal" ay nagpapakita kung paano ka makakapagpasok ng 10 numero gamit ang keyboard, i-print ang mga ito, at muling ayusin ang mga value sa reverse order. Kung ang parehong programa ay muling isinulat mula sagamit ang isang malaking bilang ng mga variable sa halip na isang array, kung gayon ang code ay tataas nang malaki. At ito ay lubos na nagpapalubha sa proseso ng pagbabasa ng programa.

Pagtaas ng mga posibilidad sa pamamagitan ng paggamit ng mga array

array program sa pascal
array program sa pascal

Posible ring punan ang mga talahanayan ng mga halaga na katumbas ng parisukat ng mga indeks ng elemento. Posible ring lumikha ng ganoong hanay ng mga string sa "Pascal", na magpapahintulot sa lahat ng mga numero na awtomatikong maipasok. Gaya ng nakikita mo, ang paggamit ng array ay lubos na nagpapahusay sa mga kakayahan ng Pascal programming language.

Ang pagpoproseso ng mga linear array ay napakakaraniwan sa iba't ibang gawain. Samakatuwid, walang kakaiba sa katotohanan na sila ay pinag-aaralan sa mga institusyon at paaralan. Bilang karagdagan, ang mga posibilidad na dala ng mga array ay medyo malawak.

Ano ang nakatago sa ilalim ng mga two-dimensional na array?

Maaari mong isipin ang isang talahanayan na binubuo ng ilang row nang sabay-sabay. Ang bawat indibidwal na hilera ay naglalaman ng ilang mga cell. Sa ganoong sitwasyon, upang tumpak na matukoy ang posisyon ng mga cell, kinakailangang markahan ang hindi isang index, tulad ng kaso sa mga linear array, ngunit dalawang - mga numero na katangian ng isang hilera at isang haligi. Ang mga two-dimensional na array sa "Pascal" ay nailalarawan sa pamamagitan ng isang katulad na representasyon.

Paano ilarawan ang mga talahanayan ng ganitong uri?

mga gawain pascal arrays
mga gawain pascal arrays

Ang istruktura ng data na matatagpuan sa wikang Pascal upang maimbak ang mga halaga ng naturang talahanayan ayang pangalan ng isang two-dimensional array. Ang paglalarawan ng naturang array ay posible kaagad gamit ang dalawang pamamaraan.

  1. Var B: Array[1..15] Ng Array [1..30] Ng Integer;
  2. Var B: Array [1..15, 1..30] Ng Integer.

Sa lahat ng sitwasyong ito, inilalarawan ang isang two-dimensional na array, na mayroong 15 row at 30 column. Ang mga paglalarawang ibinigay sa itaas ay ganap na katumbas. Upang magsimulang magtrabaho sa alinman sa mga elemento, kinakailangan na maglaan ng dalawang mga indeks. Halimbawa, A[6][5] o A[6, 5].

Ang output sa screen ay halos kapareho ng sa kaso ng isang one-dimensional na array. Kailangan mo lamang tukuyin ang dalawang index. Sa lahat ng iba pang aspeto, walang mga pagkakaiba, kaya hindi na kailangang pag-usapan ito nang mahabang panahon.

Unang paraan upang pagbukud-bukurin

one-dimensional arrays sa pascal
one-dimensional arrays sa pascal

Minsan, kinakailangan na ayusin ang data. Para dito, ang wika ay may kaukulang mga utos. Mayroong dalawang mga algorithm kung saan maaaring ayusin ang isang array sa Pascal. Ang kahulugan ng direktang paraan ng pagpili ay nakasalalay sa katotohanan na sa pamamagitan ng pagpupugad ng loop, ganap na ang bawat variable ng talahanayan ay maihahambing sa iba pang mga halaga. Sa madaling salita, kung mayroong hanay ng 15 mga numero, ang unang numero 1 ay ihahambing sa iba pang mga numero. Mangyayari ito hanggang, halimbawa, ang elementong mas malaki kaysa sa unang numero ay matagpuan. Sa dakong huli, ang paghahambing ay magaganap nang eksakto sa figure na ito. Uulitin ito hanggang matagpuan ang pinakamalaki.elemento mula sa lahat ng iminungkahing. Ang pamamaraang ito ay medyo simple para sa mga programmer na kasisimula pa lang magtrabaho sa wika.

Ikalawang paraan ng pag-uuri ng array

Ang pangalawang paraan ay bubble. Ang kakanyahan ng diskarteng ito ay nakasalalay sa katotohanan na ang mga kalapit na elemento ay inihambing sa mga pares. Halimbawa, 1 at 2, 2 at 3, 3 at 4, atbp. Kung sakaling ganap na sumusunod ang nahanap na halaga sa mga kundisyon ng pag-uuri, ililipat ito sa dulo ng buong array, ibig sabihin, lalabas ito bilang isang “bula”. Ang algorithm na ito ang pinakamahirap tandaan. Gayunpaman, hindi mo kailangang gilingin ito. Ang pangunahing bagay ay upang maunawaan ang buong istraktura ng code. At sa kasong ito lamang ang isang tao ay maaaring mag-claim na makamit ang mahusay na taas sa programming.

Konklusyon

paglutas ng mga array sa pascal
paglutas ng mga array sa pascal

Umaasa kaming nauunawaan mo kung ano ang mga array at kung paano ka makakapag-uri-uri upang makahanap ng partikular na halaga o makamit ang isang partikular na layunin. Kung pinili mo ang "Pascal" para sa paglutas ng isang partikular na problema, kung saan ang mga arrays ay sumasakop sa isang mahalagang lugar, pagkatapos ay kakailanganin mong lapitan ang kanilang pag-aaral nang lubusan. Ito ay naiimpluwensyahan ng isang kadahilanan tulad ng pagkakaroon sa wika ng isang sapat na malaking bilang ng mga variable na ginagamit sa ilang mga sitwasyon upang pasimplehin ang buong code sa kabuuan. Ang mga array ay nararapat na isaalang-alang ang pangunahing dami, ang pag-aaral kung saan dapat maganap nang walang pagkabigo.

Inirerekumendang: