Turbo Pascal, i když není oblíbeným na světěaplikace pro programování, ale tvůrci, kteří podnikli první kroky při psaní softwaru, začínají znát toto prostředí. Poskytuje představu o následcích, operátorech, funkcích a postupech, stejně jako mnoho dalších věcí. Například při studiu programátora budou čelit cykly v Turbo Pascal: Zatímco, Pro a opakovat.
Koncepce cyklu a jeho odrůd
Cyklus se nazývá opakované akce. V tomto prostředí se používají:
- s parametrem (For ... to ... do);
- s předpokladem (zatímco ... dělám);
- s post-podmínkou (Opakovat ... až).
První typ se používá, pokud je známo předemkolik kroků při řešení problému. Existuje však řada úkolů, kdy nejsou k dispozici žádné informace o tom, kolikrát se některé akce budou opakovat. V tomto případě v Pascalu Zatímco se cyklus stává nepostradatelným, jako v zásadě opakuje.
Struktura cyklu
В чем заключается суть работы в Pascal While, For a opakovat cykly? Tyto struktury přidělují název a tělo. První složka určuje proměnné, které budou "pracovat", nastaví podmínky ověření pravdy, dobu, po kterou bude tělo provedeno. V druhé komponentě jsou napsány výrazy, které by měly být použity, když je splněna podmínka, tedy True, not False.
Pokud je opakování provedeno na posledním řádkukód, pak se vrátí do záhlaví, kde je podmínka zaškrtnuta. V případě pravdy se operace opakují a v případě nedodržení stavu program "vystupuje" z cyklu a provádí další operace.
Přirozená smyčka vypadá takto. Pascal ABC a podobné programy vyžadují zápis takového kódu:
- Zatímco Stav dělat;
- Začněte;
- Těleso cyklu;
- Konec.
Pokud je v těle příkazu smyčky 1 (1 akce) provedeno, pak "závorky" začínají ... konec může být vynechán.
Bloková schéma cyklu
Turbo Pascal Zatímco má následující funkce:
- uvnitř konstrukce mohou být použity obtížné podmínky;
- po slově by neměl být středníkem (toto je považováno za chybu v Turbo Pascal a Pascal ABC);
- Proměnná, konstanta nebo výraz, který při přijetí falešné odpovědi výstupem jejich podprogramu musí být booleovský typ, tj. Booleovský.
Blokový diagram tohoto typu cyklu vypadá následovně. Zobrazuje pořadí akcí.
Algoritmus cyklu
V nejjednodušším programovacím prostředí, včetně Pascal ABC, zatímco cyklus funguje podle následujícího principu:
- zadané iterace, tj. opakování, budou provedeny tolikrát, jak je podmínka pravdivá (True);
- jakmile podmínka není splněna a odpověď je nepravdivá (nebo jinak, "False"), operátor opustí smyčku;
- jakmile k tomu dojde, program "šel" ke strukturám, které stál po cyklu.
To je významný rozdíl mezi časem a opakováním, tj. Cyklem s předpokladem a post-podmínkou.
Je velmi důležité zahrnout do těla smyčky konečnýzměňte zadanou proměnnou v hlavičce Zatímco. V každém případě by situace, která dala hodnotu False, měla přijít někdy. V opačném případě bude provedena smyčka, a pak musíte použít dodatečná opatření pro ukončení kompilátoru. Takové chyby jsou považovány za hrubé a neodpustitelné.
Jak ukončit program během cyklu?
Často nastane situace, když operátorZatímco Pascal dává smyčku v písemném programovém kódu. Co to znamená? Opakování opakování se opakuje mnohokrát, protože podmínka je vždy pravdivá. Například zde je fragment programu:
- Zatímco 2> 1 dělá;
- Napište (1).
V takovém případě přerušení spuštění úlohy stačí stisknout klávesy CTRL + F2.
Existují ještě 2 způsoby, jak toto ovládat.chování programu. Například pokud zadáte kód Pokračovat, který přenese ovládací prvek na začátek cyklické konstrukce (zde je řízena podmínka pro ukončení smyčky, tj. Provedení aktuální iterace bude přerušeno). Potom je kontrola předána v cyklu Zatímco k předchozí kontrole.
Operátor přerušení je schopen přerušit provádění všechsmyčku a předá řízení další iteraci. Výstup ze struktury zde nebude sledován. Obrázek ukazuje příklady použití těchto operátorů.
Řešení problémů
Zvažte smyčku While in action.Pascal nabízí řešení různých úkolů. Pojďme se zabývat nejjednodušším, abychom porozuměli principu fungování. Řešené úlohy v programu Pascal ABC. Ale obrázky klasického prostředí Turbo Pascal budou prezentovány pro srovnání.
Úkol 1: daná funkce Y = 5-X ^ 2/2. Vytvořte tabulku hodnot s sh = 0,5 v intervalu [-5; 5].
Algoritmus akcí:
- nastavte proměnnou X na počáteční hodnotu -5 (tj. začátek mezery);
- vypočte hodnotu Y, dokud proměnná x nedosáhne konce specifikovaného segmentu;
- zobrazovat hodnoty funkce a absolutní (X);
- zvýšit X daným krokem.
To je to, co vypadá kód Pascal ABC.
Jak je kód v programu Turbo Pascal. Níže uvedený obrázek jasně ukazuje toto.
Úkol 2: Je uvedeno pole A, které se skládá z kladných celých čísel anegativní čísla. Obsahuje 10 prvků. Je nutné vytvořit matici B, ve které budou zobrazeny kladné prvky pole A, mající rovný index. Zobrazte součet čtverců v čísle z nové matice.
Algoritmus akcí:
- Je třeba napsat podprogram, který "pracuje" pouze s prvky pole A, které mají rovnoměrný index. Ve smyčce se hodnota proměnné odpovědné za paritu indexu zvýší o 2.
- Pokud je číslo s rovnoměrným indexem z matice Aodpovídá podmínce x> 0, pak počet prvků pole se zvýší o 1. Aktuální hodnota proměnné čítače bude index čísla, která se má zkopírovat do pole B.
- Zpočátku je proměnná součet odpovědná za zjištění součtu čtverců kladných čísel přiřazena číslu 0. Pak bude provedena operace: nová hodnota čtverce se přidá k předchozí částce.
- Nebojte se, pokud ne všichni pozitivníčísla jsou přenášena z jedné matice do druhé. Musíte být pozorní. Mnoho začínajících programátorů v panice přepisuje kód. Je třeba pečlivě prostudovat stav: pozitivní čísla, která jsou v rovnoměrných "místech", tj. Mají indexy, které jsou násobky 2.
Manuální sledování je nezbytné k zajištění přesnosti výpočtů. Někdy pomocí této metody můžete identifikovat chyby, které nejsou zachyceny okem při rutinní kontrole písemného kódu.
Если провести ручные расчеты, то можно убедиться, že program funguje správně. To zase naznačuje, že algoritmus generování kódu je správný, sekvence akcí vede k logickému konci.