Programiranje. Cikli s parametrom
Posebno mesto v Turbo Pascalu zasedajo cikli. Začnejo se učiti takoj po usposabljanju I / O spretnosti na zaslonu. Konec koncev, večina nalog zmanjša na dejstvo, da zanke s parametrom in drugimi konstrukti pomagajo olajšati pisanje in delovanje določenega bloka programa.
Vsebina
Vrste ciklov
Skupaj so tri sorte:
- s parametrom,
- s predpogojom,
- s postconditionom.
Cikli s parametrom, v nasprotnem primeru se imenujejo Za hellip-to hellip-do ali For hellip-downto hellip-. storite, večkrat ponovite določeno zaporedje dejanj. Načeloma se za iste namene uporabljajo druge sorte, le v ciklu je število predhodno znanih stopenj.
V drugih dveh konstrukcijah (While in Repeat) je število ponovitev v začetku neznano. Zato je pri preučevanju naloge že potrebno razumeti, kateri cikel bo uporabljen.
Temeljne definicije na temo
Cikli s parametri se večkrat ponovijo. Števec - glavni indikator, s katerim se izvede dani načrt. Meje intervala kažejo, v kolikšni meri bodo izvedene nekatere iteracije. Mimogrede, ni nujno, da je začetna vrednost enaka 1. Uporabnik sam nastavi obe robovi vrzeli neodvisno. Telo zanke je niz navodil, za katere je število ponovitev že definirano.
Koncept "ciklov s parametri" pomeni, da se stanje v tej konstrukciji preveri, po katerem se izvede niz ponovitev. Števec poveča (ali zmanjša) in vse se ponavlja. Telo zanke se bo uporabljalo, dokler pogoj ni res.
Za hellip-to hellip-do: algoritem delovanja, sintaksa
Kot smo že omenili, se v nalogah, ki označujejo "vrzel", v kateri želite delati, uporabite zanke s parametrom. Torej, to je lahko niz številk, dni v tednu, vrstice pesmi itd.
Obstajata dve vrsti konstrukcije: povečanje števca in njegovo zmanjšanje. Prva gradnja bo napisana takole:
za odhodni : = meja 1 do meja 2 storiti
začeti
telo cikla;
konec;
Tukaj: ref. spremenljivka uporabnik na začetku programa ali blok- meja 1 in meja 2 - začetno in končno vrednost intervala - v telo cikel predpisanih je več ukrepov, ki jih mora izvajati program. Upoštevati je treba, da če telo zanke vsebuje samo 1 ukaz, se lahko oklepaji začno označijo z izklopom. V tej zasnovi, števec, viz. se bo povečal v korakih po 1.
za odhodni : = meja 1 downto meja 2 storiti
začeti
telo cikla;
konec;
Tukaj je sklicevanje. spremenljivka se bo zmanjšala v korakih po 1.
Shema cikla s parametrom For hellip-to hellip-do bo videti takole:
- Določena je vrednost zgornje meje intervala, to je, meja 2.
- Referenčna spremenljivka vrednost parametra je dodeljena meja 1.
- Preveri stanje: odhodni le-meja 2.
- Ko je rezultat sprejet Resnično (Resnica) se izvaja telo zanke.
- Števec se poveča za korak, ki je enak 1.
- Izvedba točk 3-5 poteka točno do trenutka, ko je pogoj res: odhodna> meja 2. Takoj ko se to zgodi, se cikel izteče in nadzor se prenese na ukaz po dani konstrukciji.
V For hellip-downto hellip-do algoritem deluje podobno kot zgoraj, razen nekaterih postavk:
- V tretjem odstavku se stanje preveri: odhodni meja 2.
- V 5. vrstici algoritma se števec zmanjša za 1.
- V 6. točki ukaza 3-5 se izvede, dokler pogoj ni izpolnjen: odhodni < meja 2.
Vse ostalo je podobno v obeh algoritmih dela.
Blokiraj diagram cikla s parametrom
Cikli s parametrom imajo naslednjo obliko blok diagrama (čeprav je že predstavljen zgoraj). Tukaj prikazujemo tudi poenostavljeno organizacijo strukture.
Osnovne zahteve za cikel s parametrom
Cikli s parametri zahtevajo določene vrste pogojev.
- Števec in meje reže (to je vir spremenljivke, meja 1 in meja 2) morajo pripadati isti tip podatkov. Če obstaja samo združljivost med začetno in končno vrednostjo segmenta in spremenljivko vira, se lahko program nepravilno obnaša, ker se bodo omejitve spremenile glede na vrsto podatkov prvotnega parametra.
- Vrsta podatkov, ki ji pripadajo vrednosti parametrov, mora biti celo število. Zelo priporočljivo je, da ne uporabljate pravega tipa.
- Za spremembo vrednosti spremenljivke parametra v telesu zanke je prisilno neželeno. V nasprotnem primeru bo uporabnik težko sledil morebitnim napakam.
- Za razliko od drugih vrst ciklov, v For hellip-to hellip-do aliFor hellip-downto Koraka hellip-do ne more spremeniti parameter, ki ni 1.
Turbo Pascal: Kako priti ven iz zanke
Pogosto pride do težav, pri katerih pride do kolesarjenja, torej je preskusno stanje vedno resnično. Postopek Break pomaga zapreti zank s predpogoj, postcondition, parameter. To pomeni, da njihovo delo konča prezgodaj.
Cikli s parametrom v Pascalu (programiranje katerega prevzame "večno" resnico stanja) je mogoče ustaviti s pomočjo Nadaljuj. Tukaj je delo urejeno takole: trenutna iteracija zaključi njegovo izvedbo pred načrtovanim časom, nadzor se prenese v naslednji ukaz, ne da bi zapustil zanko.
Izhodni postopek je potreben za zaključek dela bloka v programski kodi. Imenuje se znotraj postopkov (funkcij) in istočasno preneha izvajati ta "del". Če je izhod v glavnem bloku programa, potem se konča njegovo delo.
Postopek Ustavi zmanjšuje načelo delovanja na naslednje: delo programa je v celoti končano.
Primeri nalog z rešitvijo
Uporabnik bo uporaben, ko preuči temo »Cikli s parametrom v Pascalu«, ki jih je najprej treba preučiti, nato pa prakso sami napisati kodo. Enostavne naloge pomagajo bodočemu programerju učiti teorijo v praksi in jo nato uspešno uporabiti. Na temo "Cikli s parametrom" so primeri nalog z rešitvijo enostavni in zapleteni. Tukaj so tri naloge, v katerih so razčlenjeni algoritmi dela in podane pojasnila in pripombe za vsako rešitev.
Naloga 1
Glede na dvodimenzionalni niz naravnih številk v razponu [0..199], smo izbrali naključno. Poiščite število vseh dvomestnih številk, katerih vsota števk je večkratnik 2.
Algoritem ukrepov:
- Ustvarite dvodimenzionalno polje.
- Vsako številko preverite za izpolnjevanje pogojev:
a) če 9 < X < 100, nato ga popolnoma razdelite z 10 s pomočjo div;
b) dodelite drugo številko številke tako, da jo razdelite po modu;
c) dodajte označene številke;
d) razdeli mod za določen znesek za 2;
e) če je rezultat 0, se števec poveča za 1.
Naloga 2
Podan je enodimenzionalni niz celih elementov. Poiščite število pozitivnih številk.
Algoritem ukrepov:
- Ustvarite niz celih elementov, ustvarjenih z naključno izbiranjem.
- V ciklu z nastavljenim parametrom pogojna izjava IF, ki bo preveril podan element za skladnost s pogojem: X> 0.
- Če je pogoj izpolnjen, se števec poveča za 1.
- Po ciklu morate prikazati izpisano vrednost števca.
Podatki v oklepajih {} so komentarji. V vrstici 11 lahko na zaslonu prikažete matriko na dva načina: pustite presledek med številkami ali določite določeno število celic za vsak element (v tem primeru jih je 5).
V vrstici 12 je mogoče spremeniti števec tudi na dva načina: bodisi dodati 1 prejšnji vrednosti ali uporabiti standardno funkcijo podjetja Inc.
Naloga 3
Podan je kvadratni matriks. Poiščite število pozitivnih elementov na glavni diagonali.
Pojasnila:
V nizu številk se glavna diagonala razprostira od zgornjega levega kota do spodnje desne. Njena posebnost je dejstvo, da indeksi vrstice in stolpca sovpadajo. Zato je dovolj, da organiziramo en cikel za prehod skozi vrstice brez navedbe preostalih elementov.
Algoritem ukrepov:
- Ustvarite kvadratno matriko.
- Dodelite vrednost "0" spremenljivki, ki je odgovorna za štetje pozitivnih elementov.
- Ustvarite zanko za ustvarjanje kvadratne matrike.
- Organizirajte zanko tako, da preverite stanje: če je številka na glavni diagonali> 0, se števec poveča za 1.
- Ko se cikel konča, prikažite vrednost spremenljivke, ki shrani število pozitivnih elementov.
Nasprotovanje dveh programskih jezikov: C in Turbo Pascal
Samozavestni programer praviloma pozna več jezikov. Na primer, to so lahko C ++, Turbo Pascal, Delphi, Java itd. Nasprotje dveh od njih je bilo jasno izraženo v 80-ih. (C in turbo pascal). Konec dvajsetega stoletja se je isti boj dognal med C + + in Java.
V virtualnem prostoru treh deset programskih jezikov, obstajajo tri najbolj presenetljiv par, katerih opozicija zadeti največje ume kibernetskem prostoru: Algol 60 in Fortran, Pascal, C, Java in C ++. Seveda, ti občutki so subjektivna, ampak naenkrat ali drugo para je bil vodja. To je bilo posledica zahtev industrije in potrebe po določenem programskem izdelku. V 70-ih letih. "Vladali svetu" Fortran, v 80 - Turbo Pascal, v 90 - C ++. Seveda nihče od njih ni "umrl". Namesto tega so se preoblikovali v izboljšane programske izdelke.
Pri preučevanju programskih jezikov lahko vidite, da je v nekaterih temah sintaksa podobna. Tako so cikli s parametrom v C podobni podobnim konstrukcijam v Pascalu, razen v nekaj trenutkih.
Zanimivo je, da so razvijalci Turbo Pascala (Stari svet) uporabili rezultate razvoja ameriških znanstvenikov, medtem ko so v novem svetu aktivno uporabili rezultate evropskih študij. V Evropi razvijalci trdijo, da je več za čistost in kompaktnost programskih jezikov, ameriški umi pa bolj uporabljajo nove trende v pisanju kode.
- Turbo Pascal. Medtem ko ... naredite - zanko s predpogojem
- Teoretične osnove elektrotehnike: Nodalna stresna metoda
- Ciklus je ... Kaj je cikel? Kakšni so cikli?
- Matrika v `Pascalu`. Programi za nizove v Pascalu
- Izraz izpust v matematiki. Vsota razrešnica
- Osnovni tipi in primeri cikličnih algoritmov
- Matrika. Elementi matrike. Vsota elementov matrike, števila
- Pasivni glas. Ko igralec ne deluje
- Cikel s postconditionom in zanko s predpogojom
- Operaterji `Pascal`. Programski jezik Pascala
- Programiranje. Osnovne algoritemske konstrukcije
- Infinite za (Java) zanko
- Programski jezik Python: zank
- Kolo za: Pascal za začetnike
- Factorial v Pascalu: kako izračunati. Primeri programov
- Operator dodelitve v `Pascal`: kaj je namenjeno, kakšna dejanja se izvajajo
- Kako začeti igro s parametrom v okolju Windows
- Kondratieffovi cikli - gospodarsko bistvo in način uporabe pri urejanju gospodarskih procesov
- Makroekonomska nestabilnost
- Dielektrična prepustnost
- Aritmetično napredovanje