Matrika v "Pascal". Programi za matrike v Pascalu

Kazalo:

Matrika v "Pascal". Programi za matrike v Pascalu
Matrika v "Pascal". Programi za matrike v Pascalu
Anonim

Vsako leto narašča zanimanje za programiranje. In če se v ustanovah, specializiranih za pisanje programov, zanašajo na programski jezik, kot je C ++, se v šolah in tehničnih šolah študentje seznanijo s "Pascalom". In že na podlagi tega jezika začnejo dojemati programiranje z uporabo programske opreme Delphi. Takoj je treba omeniti, da ti programski jeziki zagotavljajo ogromen prostor za manifestacijo njihove domišljije. In če se lahko s pomočjo jezika Pascal seznanite z osnovnimi koncepti programiranja, potem lahko v Delphiju že napišete polnopraven program. In precej pomembno mesto pri pisanju programov včasih zaseda reševanje nizov v "Pascalu".

Prisotnost velikega števila zelo različnih spremenljivk

niz v Pascalu
niz v Pascalu

V programskem jeziku je kar nekaj različnih spremenljivk, za katere je značilna le ena vrednost. Lahko shranijo eno samo vrednost, ki ima določeno vrsto. Nizovne spremenljivke so izjema. soje zbirka tistih podatkov, za katere je tip znaka značilen. Toda tudi takšne spremenljivke se običajno obravnavajo s položaja ločene vrednosti.

Ni skrivnost, da lahko s pomočjo računalnika občutno skrajšate čas za opravljanje določenih del, povezanih z velikimi količinami podatkov. Toda kako je pri uporabi samo tistih spremenljivk, ki imajo tipe, ki so znane ljudem, mogoče rezultate dela shraniti v pomnilnik in tudi obdelati tiste podatke, ki vsebujejo veliko število vrstic? Takšna opravila so precej pogosta na katerem koli področju dejavnosti.

Seveda lahko vedno vnesete toliko spremenljivk, kot jih potrebujete za dosego svojih ciljev. Zanje lahko določite tudi nekaj vrednosti. Toda koda programa se bo od tega le povečala. Težko je brati kodo, ki ima veliko število vrstic. Še posebej, ko je treba najti napake.

V skladu s tem so programerji razmišljali o tem vprašanju. Zato imajo do zdaj razviti jeziki takšne spremenljivke, ki omogočajo shranjevanje ogromne količine podatkov vase. Niz v "Pascalu" se je zelo spremenil v pristopu k programiranju. Zato velja za pomembno spremenljivko v programskem jeziku.

Uporaba nizov lahko drastično zmanjša velikost kode

Pod tem izrazom se skriva urejeno zaporedje podatkov, za katerega je značilna ena vrsta. Poleg tega dobijo vsi ti podatki isto ime. Prav tako bi moraloTreba je opozoriti, da lahko številni predmeti resničnega sveta ustrezajo tej definiciji: slovarji, risanke in še veliko več. Vendar pa je najlažji način za predstavitev matrike v "Pascalu" v obliki nekakšne tabele. Vsaka posamezna celica vsebuje eno spremenljivko. S pomočjo koordinat lahko določite položaj spremenljivke, ki jo bo zasedla v splošni tabeli.

Kaj pomeni enodimenzionalni niz?

nizi v pascalu
nizi v pascalu

Najenostavnejša tabela je tista, ki je linearna. V tem nizu je za določitev lokacije parametra dovolj, da podate samo eno številko. Na podlagi njih se oblikujejo bolj zapleteni nizi.

Če želite opisati enodimenzionalne matrike v "Pascalu", vnesite naslednjo kodo: Type Array of.

Številke so tiste spremenljivke, ki imajo lahko vrstni red. Pri določanju obsega je vredno razumeti, da začetna številka ne more biti višja od končne. Tip, ki ga imajo elementi matrike, je lahko popolnoma kateri koli - bodisi standardni ali že opisan. Izbira bo odvisna od potrebe po rešitvi določene težave.

Kako je opisan linearni niz?

Enodimenzionalne nize je mogoče takoj opisati v "Pascal". To je treba storiti v posebnem razdelku, ki je potreben za ta poseben postopek. Vnesti boste morali naslednjo kodo: Var: Array Of.

Če želite razumeti, kako lahko opišete matriko v "Pascalu", morate vnesti naslednjo kodo:

- Var

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

- K: matrika[‘C’.. ‘R’] od celega števila;

- Z: niz [-10..10] Word;

- E: niz [3..30] realnih.

V tem primeru so spremenljivke S, VV in T niz tistih števil, ki so realna. Spremenljivka K skrije vrsto znaka in te elemente. Ki so cela števila. Niz Z shranjuje številke, katerih vrsta je Word.

Med vsemi dejanji, ki jih je mogoče uporabiti pri delu z matriko, je mogoče razlikovati dodelitev. Temu je lahko podvržena celotna miza. Na primer, S:=VV. Vendar je treba razumeti, da so operacije dodelitve lahko podvržene le matriki v "Pascalu", ki ima določeno vrsto.

Ni več operacij, ki bi jih bilo mogoče izvesti na celotnem nizu hkrati. Vendar pa lahko z elementi delate na enak način kot z drugimi praštevili, ki imajo določeno vrsto. Za sklicevanje na posamezen parameter morate podati ime matrike. Z uporabo oglatih oklepajev morate določiti indeks, ki je značilen za želeni element. Na primer: K[12].

Glavne razlike med nizi in drugimi spremenljivkami

nizi opravil Pascal
nizi opravil Pascal

Osnovna razlika med komponentami tabele in preprostimi spremenljivkami je v tem, da je mogoče v oklepaje postaviti ne samo indeksno vrednost, temveč tudi tak izraz, ki lahko vodi do želene vrednosti. Primer posrednega naslavljanja je lahko: V[K]. V tem primeru spremenljivka K prevzame določeno vrednost. Od tegaiz tega sledi, da lahko uporabite zanko pri polnjenju, obdelavi in tiskanju matrike.

Ta oblika organizacije se lahko pojavi v primeru nizovnih spremenljivk, ki so po svojih lastnostih dovolj blizu nizom tipa Char. Obstajajo pa tudi razlike. So naslednji:

  1. Spremenljivke nizov lahko vedno vnesete s tipkovnice in jih natisnete na zaslon.
  2. Spremenljivke niza so omejene po dolžini. Vnesete lahko največ 255 znakov. Kritična velikost matrike je 64 kb.

Katere metode je mogoče uporabiti za prikaz podatkov matrike na zaslonu?

Bodite pozorni na način prikaza vsebine matrike. Več jih je.

  1. Writeln (A[1], A[2], A[3]). Tak primer, čeprav primitiven, lahko pokaže, kako lahko neposredno dostopate do vsakega posameznega elementa, ki je neločljiv v tabeli. Vendar pa nekatere prednosti, ki jih imajo nizi Pascal pred preprostimi spremenljivkami, tukaj niso vidne.
  2. Program A1;

    Var B: niz [1..10] celega števila;

    K: celo število;

    Začetek

    Za K:=1 do 10 Do {Ta ukaz se zanke s parametrom }

    Readln(A[K]); {A[I] se vnaša s tipkovnico }

    Za K:=10 navzdol do 1 Do {Tabela se tiska v obratnem vrstnem redu}

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

Podobna koda programa za matrike v "Pascalu" prikazuje, kako lahko s tipkovnico vnesete 10 številk, jih natisnete in preuredite vrednosti v obratnem vrstnem redu. Če je isti program prepisan izz uporabo velikega števila spremenljivk namesto matrike, se bo koda znatno povečala. In to močno oteži postopek branja programa.

Povečanje možnosti z uporabo nizov

matrični program v pascalu
matrični program v pascalu

Tabele je mogoče napolniti tudi z vrednostmi, ki so enake kvadratu indeksov elementov. Prav tako je možno ustvariti tak niz nizov v "Pascalu", ki bo omogočil avtomatski vnos vseh številk. Kot lahko vidite, uporaba matrike močno izboljša zmogljivosti programskega jezika Pascal.

Obdelava linearnih nizov je zelo pogosta pri različnih nalogah. Zato ni nič čudnega v tem, da jih študirajo na inštitutih in šolah. Poleg tega so možnosti, ki jih imajo nizi, precej obsežne.

Kaj se skriva pod dvodimenzionalnimi nizi?

Lahko si predstavljate tabelo, ki je sestavljena iz več vrstic hkrati. Vsaka posamezna vrstica vsebuje več celic. V takšni situaciji, da bi natančno določili položaj celic, je treba označiti ne en indeks, kot je bil v primeru linearnih nizov, ampak dve - številki, ki so značilni za vrstico in stolpec. Za dvodimenzionalne nize v "Pascalu" je značilna podobna predstavitev.

Kako opisati tovrstne tabele?

naloge pascal nizi
naloge pascal nizi

Podatkovna struktura, ki jo najdemo v jeziku Pascal za shranjevanje vrednosti takšne tabele, jeime dvodimenzionalne matrike. Opis takega niza je možen takoj z dvema metodama.

  1. Var B: matrika[1..15] matrika [1..30] celo število;
  2. Var B: niz [1..15, 1..30] celega števila.

V vseh teh primerih je opisana dvodimenzionalna matrika, ki ima 15 vrstic in 30 stolpcev. Ti opisi, ki so bili navedeni zgoraj, so popolnoma enakovredni. Za začetek dela s katerim koli od elementov je potrebno dodeliti dva indeksa. Na primer, A[6][5] ali A[6, 5].

Izhod na zaslon bo skoraj enak kot v primeru enodimenzionalnega niza. Določiti morate samo dva indeksa. V vseh drugih pogledih razlik kot takih ni, zato o tem ni treba dolgo govoriti.

Prvi način razvrščanja

enodimenzionalni nizi v pascalu
enodimenzionalni nizi v pascalu

Včasih je potrebno razvrstiti podatke. Za to ima jezik ustrezne ukaze. Obstajata dva algoritma, po katerih je mogoče matriko razvrstiti v Pascalu. Pomen metode neposredne izbire je v tem, da bo z gnezdenjem zanke absolutno vsaka spremenljivka tabele primerjana z drugimi vrednostmi. Z drugimi besedami, če obstaja niz 15 številk, bo prva številka 1 primerjana z drugimi številkami. To se bo dogajalo, dokler na primer ne najdemo elementa, ki je večji od prvega števila. Kasneje bo primerjava potekala točno to številko. To se bo ponavljalo, dokler ne najdemo največjega.element od vseh predlaganih. Ta metoda je precej preprosta za tiste programerje, ki so pravkar začeli delati v jeziku.

Način razvrščanja drugega niza

Drugi način je mehurček. Bistvo te tehnike je v tem, da se sosednji elementi primerjajo v parih. Na primer 1 in 2, 2 in 3, 3 in 4 itd. V primeru, da najdena vrednost v celoti ustreza pogojem razvrščanja, se bo premaknila na konec celotnega niza, tj. pojavila se bo kot "mehurček". Ta algoritem si je najtežje zapomniti. Vendar vam ga ni treba mleti. Glavna stvar je razumeti celotno strukturo kode. In samo v tem primeru lahko trdimo, da dosežemo velike višine v programiranju.

Sklep

reševanje nizov v pascalu
reševanje nizov v pascalu

Upamo, da razumete, kaj so nizi in kako lahko razvrstite, da najdete določeno vrednost ali dosežete določen cilj. Če ste za reševanje določenega problema izbrali "Pascal", v katerem zavzemajo pomembno mesto nizi, se boste morali do njihovega preučevanja lotiti temeljito. Na to vpliva dejavnik, kot je prisotnost v jeziku dovolj velikega števila spremenljivk, ki se v določenih situacijah uporabljajo za poenostavitev celotne kode kot celote. Nize se upravičeno štejejo za glavne količine, katerih študij mora potekati brez izjeme.

Priporočena: