Komputiloj, Programaro
Turbo Pascal. Dum ... do - buklo kun antaŭkondiĉo
Turbo Pascal, kvankam ne estas la mondaj plej ŝatata aplikaĵo por programado, sed la kreintoj, farante sian unuajn paŝojn en la skribo de la programaro, starti iliajn konatiĝo kun ĉi tiu duona. Ĝi donas ideon de la ramificaciones, operatoroj, funkcioj kaj proceduroj, kaj ankaŭ multaj aliaj aferoj. Ekzemple, en la studo programisto vizaĝo cikloj en Turbo Pascal: Dum, Por kaj Ripeti.
La koncepto de la ciklo kaj liaj variantoj
Ciklo estas ripetema ago. En ĉi tiu medio, uzu:
- kun parametro (Por ... al ... do);
- kun la antaŭkondiĉo (Dum ... do);
- a postcondition (Ripetu ... ĝis).
La unua tipo estas uzata kiam oni scias kio paŝoj por solvi la problemon. Tamen, estas kelkaj taskoj, kie ne ekzistas informoj pri kiom da tempo estos ripetita aŭ tiu ago. En ĉi tiu kazo, Pascal Dum ciklo iĝas nemalhavebla, kiel ekzemple, en principo, kaj Ripetu.
La strukturo de la ciklo
Kio estas la esenco de la laboro en la Paskalo Dum, Por kaj Ripetu cikloj? En tiaj konstruoj rezervu kaplinio kaj korpo. La unua ero de la specifita variabloj kiuj "laboro" estas precizigita per la kondiĉoj de la valideco periodo al kiu la korpo estos ekzekutita. En la dua parto de preskribi esprimoj por esti uzita en la kazo de la kondiĉo, te. E. Vera La anstataŭ Falsaj La.
Kiam ripeto estas farita en la lasta linio de kodo, do revenas al la titolo, kie la kondiĉo estas provita. Se vero operacioj estas ripetitaj, kaj en la evento de ajna rompo de la programo "Eliri" el la ciklo kaj ĝi realigas pli operacioj.
Sekvas rigardoj Dum buklo. Pascal ABC kaj tiaj programoj postulas skribi tian kodon:
- Dum kondiĉo fari;
- komencu;
- La ciklo korpo;
- Fino.
En la okazaĵo ke la buklo estos realigita 1 operatoro (1 ago), tiam la "krampoj» komenci ... fino povas preterlasi.
Flowchart ciklo
La Turbo Pascal Dum la sekvaj karakterizaĵoj:
- ene de la strukturo povas esti malfacile uzi kondiĉoj;
- post la vorto do ne devus esti komo (konsideras eraron en Turbo Pascal kaj Paskalo ABC);
- variablo, konstanto aŭ esprimo kiu servas kiam respondon Falsaj produktadon ilin subrutinas devas nepre esti logika tipo, te. e. Boole.
Ĝi estas la jena bloko diagramon de la vario ciklo. Ĝi montras la sinsekvon de efektivigo agoj.
La algoritmo de la ciklo
.. En la plej simpla programado medioj, E kaj h en Pascal ABC, Dum buklo funkcias sur la sekva principo:
- .. Pro ripeta, kio estas, ripeto, okazos tiom da fojoj, dum la kondiĉo estas vera (Vera);
- kiam la kondiĉo ne estas kontentigita kaj donas False respondo (aŭ alie "Falsa"), la telefoniston el la maŝo;
- Kiam tio okazis, la programo "iris" en la dezajno aperanta post ciklo.
Jen signifa diferenco de Dum Ripeti, t. E. A antaŭ-ciklo de la postcondiciones.
Gravas por inkludi en la buklo finia ŝanĝo en antaŭfiksita variablo titolo Dum. Ĉiukaze, iam venis situacio kiu donas False. Alie okazos ciklo, kaj tiam devas preni aldonan aranĝojn por eliri de la tradukilo. Tiaj eraroj estas konsideritaj malĝentila kaj nepardonebla.
Kiel eliri la programon dum bicikla?
Ofte la situacio okazas kiam la operatoro donas Dum Pascal buklo en la skribita programo kodo. Kion tio signifas? Ripeto estas ripetita senfina nombro da tempoj, ĉar la kondiĉo estas ĉiam vera. Ekzemple, ĉi tiu kodo fragmento:
- Dum 2> 1 faras;
- Write (1).
En ĉi tiu kazo, interrompi la plenumon de la tasko, simple premu CTRL + F2.
Estas 2 manieroj por kontroli la konduton de tia programo. Ekzemple, se registran Daŭrigu kodo kiu pasas kontrolon al la komenco de la cikla strukturo (ene difinitaj la buklo eliro kondiĉo estas monitoritaj, te. E ekzekuto de la aktuala ripeto estas interrompita). Tiam kontrolo estas trapasita en Dum buklo en la antaŭa testo.
Paŭzo operatoro povas interrompi la plenumon de la tuta ciklo kaj transdoni kontrolon al la sekva ripeto. Ĉi tie, la produktado de la konstruo ne estos kontrolita. La bildo montras ekzemplojn de la uzo de ĉi tiuj operatoroj.
Renkonti la defiojn
Konsideru Dum en operacio ciklo. Pascal proponas por solvi la problemon variis. Ni konsideru simpla kompreni la operacio. Solvita taskoj en Pascal ABC programo. Sed estos prezentita kaj la bildo de klasika Turbo Pascal medion por komparo.
Tasko 1: donita la funkcio Y = 5-X ^ 2/2. Krei tabelo de valoroj en pliigoj sh = 0.5 super la intervalo [-5, 5].
La algoritmo estas:
- agordi variablon X por komenca valoro egala al 5 (kio estas la komenco de la breĉo ..);
- kalkuli Y valoro, dum la variablo x ne atingas la finon de diris intervalo;
- montri la valoroj de la funkcio kaj la absciso (X);
- X kresko de antaŭdeterminita paŝo.
Jen la kodo en Paskalo ABC programo.
Kiel funkcias la kodon en Turbo Pascal programo. La bildo malsupre ilustras ĉi.
Tasko 2: donita tabelo A konsistas el la tuta pozitiva kaj negativaj nombroj. Ĝi enhavas 10 artikolojn. La bezono formi matrico en kiu la pozitivaj elementoj de tabelo A estas montrita havante eĉ indekso. Vidigi la sumo de la kvadratoj de la nombro de novaj matrico.
La algoritmo estas:
- Vi devas skribi rutino kiu "laboro" nur kun la elementoj de la tabelo A havi paran indekso. En la ciklo variablo valoron kiu respondas al la paridad de la indekso estos incremented de du.
- Se la nombro estas para indekso de la matrico A respondas al la kondiĉo x> 0, la vendotablo tabelo incremented per 1. La aktuala valoro de la vendotablo variablo estos la indekso de la kopio nombro en la tabelo B.
- Komence, la variablo summa, ĝi komisias de trovi la sumon de la kvadratoj de pozitivaj entjeroj, estas metita al 0. Tiam, la operacio estos efektivigita: al la antaŭa sumo aldonas la nova valoro de kvadrata.
- Ne timigita, se ne ĉiuj pozitivaj nombroj moviĝis de unu tabelo por alia. Vi devas zorgi. Multaj novulo programistoj reverki la kodon en paniko. Estas necese zorge ekzameni la kondiĉon: pozitivaj nombroj, kiuj estas sur eĉ "loka", tio estas, kun la indicoj, kiuj estas obloj de 2 ...
Manlibro strekita estas necesa por certigi ke la ŝtono de lojaleco. Kelkfoje, uzante tiun metodon povas identigi eraroj kiuj ne kapti la okulon en normalaj inspektado de la skribita kodo.
Se ni realigi manlibron kalkuloj, eblas certigi ke la programaro funkcias konvene. Ĉi tio, siavice, diris ke la kodo generacio algoritmo estas ĝentila, la sinsekvo de agoj kondukas al logika fino.
Similar articles
Trending Now