Ciklikus számítási folyamatok - studopediya
A legtöbb probléma megoldható a mérnöki gyakorlatban, ciklikus szerkezetű. Ciklikus számítási folyamat - ez a folyamat, amely az ismételt végrehajtását ugyanabban a sorrendben cselekvések különböző értékeire alkotóegységek.
Ismétlődő szakaszok hívják ciklust. A gyűrűs szerkezet jelentősen csökkentheti a hangerőt az algoritmus és a program. Változó algoritmus, amely minden egyes végrehajtási ciklus veszi egy új értéket, az úgynevezett ciklus paraméter.
Hurok van szükség: állítsa be a kezdeti érték egy ciklus paraméter; állítsa a beállítás megváltoztatásához előtt minden új a ciklus ismétlődik, és ellenőrizze a feltételeket, a végén az ismétlések és az átmenet a kezdete a ciklusban, amennyiben ismétlés nincs kész.
Vannak különböző típusú ciklus. Típus határozza meg a folyamatirányító végén. A műszaki problémák legjellemzőbb típusa egy számtani sorozat. Ezekben a ciklusok, egy paraméter változik egy előre meghatározott kezdeti, hogy a végső, előre meghatározott értéket a konstans növekmény egyes végrehajtási ciklus (egy ciklus egy ismert számú iteráció).
Ha a ciklus változtatása egy egyszerű változó, a paraméter a változó ciklus. Változók index (tömbök) opció ciklus az index változó.
A vezérlési feladat №3 bemutatott problémákat gyűrűs szerkezetet típusú számtani sorozat.
Tekintsük a leggyakoribb algoritmusok gyűrűs szerkezetű.
4. példa beállítja a tömb nevű A, amely 20 elemet, Ai. i = 1. 20. létrehozása számító áramkör összegeket és a termékek esetében a tömbben.
Összegének kiszámításakor a tárolási által használt vétel - az új kifejezést hozzáadjuk az összeg a korábbiak. Amikor teljesítő minden egyes ciklusban kell felhalmozni az összeg növelhető egy kifejezés erre az összegre. Ehhez az szükséges, hogy állítsa be a kezdeti érték a ciklus eléri a 0. Ebben a példában, a ciklus paraméter i egy index, amely változik 1 és 20 lépésekben egyenlő 1.
Ugyanezt a technikát használják a felhalmozódása a termék. A algoritmikus nyelvek FORTRAN és BASIC, ha a változó nincs definiálva, akkor van rendelve egy 0 érték, ezért a termék a funkció nem számítható, ezért mielőtt a hurok kap egy kezdeti érték a termék a 1 a hurkon belül, a következő tényező kiszámítása, és megszorozzák a terméket.
Összhangban a jelentését a leírt értékeket, válassza ki a nevet a változók összegére - S, munkák - P.
Számítási rendszer áll a következő szimbólumokat.
3. Eljárás. Változók S és P jelentése adott kezdeti értékek S = 0, p = 1.
4. Indítsa el a ciklust. Meghatározza ciklus paraméterei: a kezdeti és végső értéke a paraméter az i és a pályát ciklus egyenlő 1.
5. Eljárás. Felhalmozódó mennyisége S, és a terméket P.
6. A ciklus végén a paraméter i. Ciklushoz, azaz S és P számítás elvégzése, amíg a paraméter i kisebb vagy egyenlő, mint a végső értéket. Ha a paraméter nagyobb, mint a végső érték, a ciklus véget ér, és a következő nyomtatandó eredményeket.
7. A dokumentum. amely kinyomtatja a számított összege S, és a terméket P.
számítási rendszer ábrán látható. 4.

Ábra. 4. A rendszer számítási összegét és a termék a tömb elemeinek.
Példa 5 meghatározza egy tömb nevű H. álló 10 elemek, Xj. j = 1. 10. Készítsen áramkör kiszámítása a termék pozitív elemet a tömb.
Kiszámításához a terméket feldúsulás vétel, melyet a fentiekben részletesen ismertettük. De ebben a példában, a termék csak a pozitív elemeket a hurkon belül, így ellenőrizni kívánt másik elem, hogy aláírja massivaHj. Ha az elem pozitív, akkor meg kell szorozni a terméket, ha nem - ez nem tekinthető.
Paraméter ciklusban j index, ami változik 1-től 10 1-es lépésekben változó termék jelölésére P.
Számítási rendszer áll a következő szimbólumokat.
2. Írja be a tömb Xj, J = 1. 10.
3. Eljárás. P változó értéke egyenlő egy kezdeti értéket 1.
4. Indítsa el a ciklust. Kezdete és vége a paraméter értéke j ciklus és lépésről ciklust.
5. Határozat. A következő elem a tömb ellenőrizzük a jele. X j> 0?
6. Eljárás. kiszámítja a P termék = P * Xj
7. A ciklus végén a paraméter j. A hurok végrehajtani, amíg a paraméter j értéke kisebb vagy egyenlő, mint a végső értéket, ellenkező esetben a ciklus befejeződött, és a következő dokumentum végezzük.
8. A dokumentum. kimenetre nyomtatni számított termék R.
számítási rendszer ábrán látható. 5.

Ábra. 5. Az áramkör kiszámításakor a termék a pozitív elemeket.
6. példa meghatározza egy sor X, amely 20 példány, Xi. i = 1. 20. létrehozása és számító áramkör összegek pozitív elemet a tömb.
Felvételi összegét számolja S a 4. példában leírt Ugyanezt a technikát használják a számítás a elemek száma. Jelöljük k - a tételek száma halmozódott fel. Az ilyen változónak nevezzük k számlálót. Mielőtt a k ciklust kell „tiszta”, azaz rendelni 0. és növelje a számláló 1 minden ciklusban.
Ebben a példában, a teljes számának pozitív elemeket csak, ezért, a cikluson belül, hogy nem a következő tesztet elem tömb Xi aláírására, ahogy ez az 5. példában a paraméter ciklus - i index változó 1 és 20 közötti, 1.
Számítási rendszer áll a következő szimbólumokat.
3. Eljárás. Változók S és K adott kezdeti értékek S = 0, K = 0.
4. Indítsa el a ciklust. Által adott kezdeti és végső paraméter értéke i és lépésről ciklust.
5. Határozat. Csekkek Pozitivitás következő eleme a tömb, azaz Xi> = 0?
6. Eljárás. Ez akkor fordul elő felhalmozódó mennyisége S folyamatot és növeli a számláló K 1, azaz a S = S + Xi. K = K + 1.
7. A ciklus végén a paraméter i. A ciklust ismételjük mindaddig, amíg a paraméter i kisebb vagy egyenlő, mint 20. Ha több, mint i, a következő dokumentumot végezzük.
8. A dokumentum. Nyomtatott S érték és K.
Számítás rendszer látható a 6. ábrán
7. példa tömb X példában leírt módon a 6., hogy kiszámítja a számtani átlaga pozitív elemeket.
számítási rendszer eltér a korábbi 7. igénypont. A ciklus végén.
A számtani középértéke az elemek - ez az összeg ezen elemek, osztva a számuk. Egy sor lehetséges adatok Xi, amikor az összes elemet a tömb negatív értéket, akkor a változó, amely tárolja az értéket a számos pozitív elemet a tömb lesz nullára. Van egy helyzet nullával osztani, ami egy rendszerhiba, amelyben a program összeomlik. Hogy megszüntesse nullával osztani, az összeg ezen elemek ellenőrizhető. És ha ez a szám nulla, akkor az üzenet van nyomtatva.
Jelöljük a számtani középérték pozitív elemei a változó reakcióvázlat R. számítások kiindulási 8. igénypont áll a következő lépéseket.
8. Döntés. Ellenőrzése az elemek száma K = 0? Ha igen - nyomtatott a message „K = 0” - ha nem, akkor váltani a számítás R.
9. A dokumentum, amely nyomtatott üzenet „nem pozitív elemeket”, és az átmenetet a szimbólum stop.

Ábra. 6. rendszer számítási összegét és a számos pozitív elemet a tömb.
10. Eljárás. Számítsuk R = S: K.
11. A dokumentum kinyomtatott érték R.
Számítási rendszer a 7. ábra mutatja.
Ha van egy számított átlaga az összes elemet a tömb, a rendszer nem lesz ellenőrzés a következő tömb elem a jel, azaz a A megoldás nem 5. igénypont.
Kiszámításakor az számtani átlaga negatív elemeket a tömb az 5. igénypontban megoldás az, hogy ellenőrizni Xi feltételek <0? Остальные пункты останутся без изменения.
8. példa Set két tömböt Ai. i = 1, ..., 25 és Vj. j = 1, ..., 30. Készítsen áramkörben pozitív elemeit az egyes tömb. Határozza meg, amelyben egy sor pozitív elemet.
A rendszer számának kiszámítása, pozitív elemek a 6. példában leírt Ebben a példában, a szükségességét, hogy kiszámítja a száma elemek két tömb az A és B, amelyek különböző dimenzió, azaz a tartalmazó különböző mennyiségű elemek. Ezért szükséges szervezni a két ciklus: az első tömb A ciklus paraméter i, a második tömb paraméter a ciklusban j.

7. ábra. A rendszer számítási számtani átlaga pozitív elemei a tömb.
Jelöljük száma SC-pozitív sejtek a tömbben A, HF-mennyiség pozitív a tömb elemeinek B.
Számítási program az alábbi összetevőket tartalmazzák.
3. Eljárás. "Zero" KA és KB számlálók, azaz SC = 0, q = 0.
Rámutat 4-7 szervezni hurkos feldolgozást tömb számlálásával számos pozitív elemet a tömb. Szerkezetileg, ezek a tételek ugyanaz, mint a 7. példában, p.4-7.
Bekezdések 8-11 szervez ciklusát feldolgozási tömb B. Count a számos pozitív elemet a tömb. Szerkezetileg, ezek a tételek ugyanaz, mint a 7. példában, p.4-7.
12. dokumentum. Nyomtatás KA és KB.
13. határozat. Ellenőrizze, ahol a pozitív a tömb elemeinek az A és B vagy az elemek száma megegyezik? Ha SC> KV, majd a 14. igénypont szerinti, amikor a szonda<КВ – то п.15, а если КА=КВ, то п.16.
14. A dokumentum. Nyomtatás Post „a tömb pozitív elemek." Daylight 17. igénypont szerinti. Állj.
15. A dokumentum. Nyomtatás Post „egy tömb, több pozitív elemeket." Daylight 17. igénypont szerinti. Állj.
16. dokumentum. Üzenet nyomtatása „elemek száma megegyezik."
Számítási rendszer a 8. ábrán látható
9. példa adott tömb Yj. j = 1. 30. Keresse meg a maximális (legmagasabb) elem a tömbben.
Megtalálni a maximális (legnagyobb) a tömb elem végre egy hurkot összehasonlításával érték az aktuális elem a tömb maximális összes korábbiak. Ebben az esetben, ha az érték az aktuális elem nagyobb, mint a legnagyobb az összes a korábbiak, a maximális értékre van állítva az aktuális elem. Belül a hurok, a következő képletet használjuk, hogy kiválassza a maximális értéket.
Lezárását követően a ciklus Ymax maximális értéke minden érték tekinthető Yj.
Az alkalmazási ez az összetétel szükséges beállítani a kezdeti érték kezdete előtt ciklus Ymax. Jellemzően a Ymax hogy nagyon kevés. Aztán, miután az első előadás a ciklus lesz az értéke Ymax Y1. Ymax második végrehajtási ciklus lesz, mint a Y2 és a legnagyobb Y1 és Y2, stb
Ha a kiválasztott maximális elem a tömb, mint a példánkban, a maximális érték Ymax mint amennyit értéke az első elem a tömb, és a ciklus kezdődik keresi a legnagyobb eleme a második tömb.
Számítási program az alábbi összetevőket tartalmazzák.
2. Írja be a tömb Yj; J = 1. 30
3. Eljárás. Hozzárendelése kezdeti értékek Ymax = Y1.
4. Indítsa el a ciklust. Beállítja a kezdeti és a végső érték ciklusban j, és a lépés ciklust.
5. Határozat. Összehasonlítás az értékek a j-edik eleme a tömb és Ymax, t. E. Yj> Ymax? Ha ez az érték nagyobb Yj értékek Ymax, akkor a következő tétel kerül végrehajtásra. 6. Eljárás. Ha - nem, ugrik a ciklus végéig.
6. Eljárás. Hozzárendelése Ymax értéke j-edik elem
7. A ciklus végén a paraméter j.
8. A dokumentum. Nyomtatás Ymax.
számítástechnikai rendszer ábrán bemutatott. 9.
