Ciklikus számítási folyamatok 1
Cycle - megismétlése egy adott szekvencia akciókat.
Az algoritmikus szerkezet a „ciklus” áll utasítás végrehajtásakor többször. Ez utasítások sorozata hurkot képez testet.
Ciklikus algoritmikus szerkezete a két típus:
1) ciklus a paraméter, amely a test fut egy bizonyos (pre-ismert) számú alkalommal;
2) ciklus az állapot, amelyben a test fut, amíg a feltétel igaz, vagy hamis.
Ciklus paramétert használjuk, ha előre ismert, hogy hány ismétlés a hurok szervezetnek végre kell hajtania (6. ábra).
6. ábra - Sorozat opcióval
Elején a ciklus változó értéke i van beállítva.
Minden egyes áthaladás ciklus változó i-t növeljük a lépés méretét.
Amikor elér egy nagyobb értéket Ik, akkor a ciklus véget ér, és az alábbi állítások közül kivégezték őket.
A Pascal ciklusban egy meghatározott számú ismétlés én keresztül valósul meg, a kezelő.
Általános nézet FOR
Az I: = A Ik do <тело цикла>;
Az I: = A Ik do
kezdődik <тело цикла> végén;
ahol is (a), TO (mielőtt), do (végre) - kiegészítő szavakat, I - manipulált változó ciklus (ciklus paraméter), amelyet be kell felsorolás típusú (integer, karakter, stb)
A legtöbb esetben a ciklus paramétert használjuk, mint egy változó típusú egész szám, lépés, akkor +1 (vagy - 1).
Ciklus paraméterek nem lehet a valós típusú;
Az, Ik - kifejezés, amelynek típusa megegyezik a fajta kontroll i változó,
A - A kezdeti értéke a ciklus változó,
Ik - a végső értéke a manipulált változó ciklus
loop test - egyszerű vagy összetett utasítás Turbo Pascal.
Dolgozz nyilatkozat
1. A ciklus paraméter van rendelve egy kezdeti értéket;
2. A kezdeti értéket összehasonlítjuk a végső értéket, és ha ez nem több, mint a végső értéket, a ciklus test fut;
3. beállítása a ciklus megváltozik az értéke - fokozott lépésre (az egyik, ha a ciklus paraméter típus);
4. ciklikus része ismételten minden egyes értékére elvégezzük a ciklus paraméter a kezdeti értéktől egy végső érték Ik befogadó;
5. Amikor a ciklus paraméter meghaladja a végleges érték, az üzemeltető befejeződik, és átadja a vezérlést a következő nyilatkozatot.
Paraméter i ciklus nem kell újra belül a ciklusos csoport.
Ha egy lépést változás a hurok paraméter +1, és In> Ik, a ciklusos csoport soha nem lehet végrehajtani.
3. példa Legyen kódtöredék egy egész változó:
Az I: = 1-től 5 do
A ciklikus program keretében ismételten ötször végezzük el, és a ciklus I paraméter érték módosításához 1-től 5 Ennek eredményeképpen a program változók értékei a következők:
Amikor programozási ciklus egy másik formája az üzemeltető lehet használni, hogy a redukciót a manipulált változó:
Az I: = A downto Ik do
Az I: = A downto Ik do
4. példa Legyen kódtöredék egy egész változó:
Az I: = 1 és 5 downto
Végrehajtása során a program fragmentum változók értékei a következők:
5. példa nyomtatása minden betű a latin ábécé fordított sorrendben. megoldások algoritmus tömbvázlata formában a 7. ábrán látható.
7. ábra - Egy algoritmust a probléma megoldásának
Program Pascal az alábbiak szerint:
Az I: = 'Z' downto 'A' do
1 Adott egy pozitív egész szám, N. kiszámolása:
2 adott pozitív egész szám, N. kiszámolása:
3. Adott egy pozitív egész szám, N. Számítsuk ki a terméket az első N-szorzók
4 Adott egy pozitív egész szám, N. kiszámolása:
5 kap egy n pozitív egész. Számolja:
6 kap egy természetes szám n. Számítsuk ki: ahol n> 2.
7 kap egy n pozitív egész. Számítsuk ki: (n> 1).
8 kap egy n pozitív egész. Számolja:
10 kap egy n pozitív egész. Számolja:
A Pascal ciklus egy ismeretlen ismétlések számát előzetesen (ciklusokat) elrendezett keresztül Miközben az üzemeltetőket és ismételje meg.
Ezek a kijelentések, ellentétben a FOR utasítással, szélesebb körben alkalmazható.
Ciklus előfeltétele
Ciklus feltétele valósul operatoraWhile Pascal. Miközben a vezető nyilatkozata (lefordítva „hosszú”) nem tartalmaz kifejezett utalást az iterációk számát - tartalmazza a logikai kifejezés. amelynek értéke automatikusan számítjuk végrehajtása előtt minden egyes iteráció (8. ábra). Mindaddig, amíg a logikai kifejezés „igaz” iteráció folytatódik; Egyszer befejezése után a következő iteráció a logikai kifejezés lenne a „hamis”, a következő iteráció a hurok nem fog megvalósulni, és a menedzsment a program kap egy nyilatkozatot követően Míg nyilatkozatot.
Nyilvánvaló, hogy ha a hurok fejléc tegye azonosan hamis logikai kifejezés, ebben a ciklusban nem teljesíti bármely ismétléseket, és ha ez a kifejezés azonos igaz, a ciklus lesz végtelen (ez utóbbi esetben az úgynevezett hurok program). Annak érdekében, hogy a hasonló helyzetek száma operandusokon logikai kifejezés tartalmaznia kell egy vagy több változó, hogy megváltoztassák az értékeket a hurok, hogy a ciklus végéig.
8. ábra - ciklus előfeltétele
Pascale dolgozik az üzemben, miközben a szerkezete a következő:
ahol while (még), akkor (végre) - függvény szó, x - egy logikai kifejezés, amely megadja a feltétele annak, hogy folytassa a munkát;
<тело цикла> - a piaci szereplők Turbo Pascal;
A hurok test fut, amíg a logikai kifejezés x igaz, ellenkező esetben a hurok kilép.
Változó ciklust üzemben kell meghatározni való belépés előtt a ciklusos csoport. Ott kell lennie a kiutat a ciklust. Ha ez nem áll rendelkezésre, például a logikai kifejezés x - mindig az igazság, a ciklikus számítások végrehajtásra kerül a végtelenségig. Ebben az esetben azt mondjuk, hogy volt egy „hurok” a program.
MÍG operátor állások
1. ellenőrzi az értéke a logikai kifejezés x.
2 Amíg az x értéke igaz, a ciklusos csoport.
3. Ha a start x értéke hamis, akkor a piaci szereplők a gyűrű nem kerül végrehajtásra még egyszer.
6. példa Find hány szempontjából szükséges, hogy az összeg 2 + 4 + 6 + ... több volt, mint egy pozitív egész szám N.
Bemutatjuk a következő jelöléseket:
S - a jelenlegi az összege;
Sl - értékét a következő kifejezés;
K - a kifejezések száma az összegben.
megoldások algoritmus tömbvázlata formában a 9. ábrán látható A program az alábbiakban tárgyaljuk.
Var N, K, S, Sl: integer;
Write ( 'Enter pozitív szám');
9. ábra - 6. példa Egy algoritmust a probléma megoldására
7. példa Tekintettel a számos x. e. Számítsuk sinx = x belül e.
Annak érdekében, hogy a szükséges pontossággal e. meg kell kiszámítani az összeg váltakozó sorozatban csak azok a tagok Un. hogy kielégítik azt a feltételt.
Kiszámításához a következő száma Un tag hasznos, hogy használja a kiújulás képletű U1 = x;
megoldások algoritmus tömbvázlata formában a 10. ábrán látható.
Program Pascal:
Write ( 'Enter érték x');
Write ( 'adja pontosság');
Míg az ABS (U)> = e do
WriteLn ( 'sin (x) =', S: 8: 4);
10. ábra - Egy algoritmust a probléma megoldásának a 7. példa
Ciklusok utófeltétel
Kilépési feltétel a hurok lehet helyezni, miután a ciklus törzse. Egy ilyen ciklust nevezünk ciklus utófeltétel (11. ábra).
Hurok lefut, amíg a logikai kifejezés értéke hamis. Ha a logikai kifejezés értéke igaz, akkor a ciklus véget ér.
A utófeltétel hurok legalább egyszer végrehajtódik.
11. ábra - ciklus utófeltétel
Ciklus utófeltétel Pascal megvalósítható szereplők Ismétlés ... amíg, amely a következő formában:
ismétlés (ismétlés), és amíg (eddig) - funkció szó,
<тело цикла> - bármely gazdasági Turbo Pascal,
x - egy logikai kifejezés, amely megadja a befejezés feltétele.
Állás üzemeltető ismétlés ... amíg
1 végrehajtja a ciklus törzse
2. ellenőrzi a logikai kifejezés.
Ha az érték igaz, akkor az üzemeltető ismételje munkájuk megáll és átadja az irányítást, hogy kövessék az üzemeltető.
Ellenkező esetben, ha a logikai kifejezés hamis, akkor a hurok test fut.
7. példa alkalmazásával ismételje üzemben a következő (12. ábra):
Program Pascal:
Write ( 'Enter érték x');
Write ( 'adja pontosság');
WriteLn ( 'sin (x) =', S: 8: 4);
12. ábra - Egy algoritmust a probléma megoldásának a 7. példa
alkalmazásával REPEAT utasítás
Elismerések ciklus szereplők egy ismeretlen számú ismétlés ismétlések, és bár
1 operátor munka közben, amikor az értéke egy logikai kifejezés - az igazság, ismételje meg a - amikor egy hazugság.
2. Az üzemeltető megismételni a hurok test legalább egyszer végrehajtódik, akkor is, ha az érték a logikai kifejezés igaz; A while, ha az érték a logikai kifejezés hamis, akkor a hurok teste nem kerül végrehajtásra egyáltalán.
Így a szervezet ciklikus számítási eljárás nyelvén Turbo Pascal három szereplők:
· A - Æ meghatározott számú ismétlés;
· Bár, ismétlem - a szervezet a ciklusos szerkezetek egy ismeretlen az ismétlések számát.
Problémák egy hurok előfeltétele.
Készítsen számítási program az F (x), az [a; b] h lépéssel. Eredmény bemutatott egy táblázatot, az első oszlop, amely - az értéke az érv, a második - a megfelelő érték a funkciót. A kiindulási adatok táblázatban mutatjuk be 5.
5. táblázat - Kiindulási