Datori, Programmatūra
Turbo Pascal. Kaut arī ... ir loks ar priekšnoteikumu
Turbo Pascal, lai gan tas nav pasaules mēroga iecienītākais programmēšanas lietojums, bet radītāji, kas veic pirmos soļus rakstīšanai ar programmatūru, sāk iepazīties ar šo vidi. Tas sniedz priekšstatu par filiāļu atklāšanu, operatoriem, funkcijām un procedūrām, kā arī daudzām citām lietām. Piemēram, mācību laikā programmētājs saskarsies ar Turbo Pascal cikliem: Kamēr, Par un Atkārtojiet.
Cikla un tās šķirnes jēdziens
Cikls tiek saukts par atkārtotām darbībām. Šajā vidē mēs izmantojam:
- Ar parametru (Lai ... līdz ... darīt);
- Ar priekšnosacījumu (Kaut arī ...);
- Ar postcondition (Atkārtojiet ... līdz).
Pirmais veids tiek izmantots, ja iepriekš ir zināms, cik daudz problēmu risina. Tomēr ir vairāki uzdevumi, ja nav informācijas par to, cik reizes viena vai otra darbība tiks atkārtota. Šajā gadījumā Paskāla laikā cikls kļūst neaizstājams, kā tas principā ir un atkārtojas.
Cikla struktūra
Kāda ir darba būtība Paskālē "Kaut gan, par un atkārtot ciklus"? Šīm struktūrām ir virsraksts un ķermenis. Pirmais komponents nosaka mainīgos lielumus, kas "darbosies", nosacījumus patiesības pārbaudei, periodu, uz kuru ķermenis tiks izpildīts. Otrajā komponentā tiek ierakstīti izteicieni, kas jāizmanto, ja nosacījums ir izpildīts, tas ir, True, nevis False.
Ja atkārtojums tiek veikts pēdējā koda rindiņā, tas atgriežas virsrakstā, kurā tiek pārbaudīts nosacījums. Patiesības gadījumā darbības tiek atkārtoti, un nosacījuma neizpildes gadījumā programma "atstāj" ciklu un veic turpmākas darbības.
Kaut cilpa izskatās šādi. Pascal ABC un līdzīgām programmām ir nepieciešams rakstīt šo kodu:
- Kamēr nosacījums ir;
- Sāciet
- Cikla ķermenis;
- Beigt
Gadījumā, ja 1 cilts operators (1 darbība) tiek izpildīts cilpas ķermenī, tad gala kronšteini "start" var tikt izlaisti.
Cikla plūsmas shēma
Turbo Pascal Lai gan ir šādas funkcijas:
- Kompleksos apstākļus var izmantot konstrukcijas iekšienē;
- Pēc vārda do, nedrīkst būt semikols (tas tiek uzskatīts par kļūdu Turbo Pascal un Pascal ABC);
- Mainīgais lielums, konstante vai izteiksme, kas tiek izmantota, ja tiek iegūta nepareiza subroutīna izlaide, ir loģisks veids, tas ir, loģisks.
Šīs cikla versijas blokshēma izskatās šādi. Tas parāda darbību secību.
Cikla algoritms
Vienkāršākajās programmēšanas vidēs, tostarp Pascal ABC, Lai gan cilpa darbojas saskaņā ar šādu principu:
- Dotās iterācijas, t.i., atkārtojumi, iet tik daudz reižu, līdz nosacījums ir taisnība (True);
- Tiklīdz nosacījums nav izpildīts un dod nepareizu atbildi (vai citādi "False"), paziņojums iziet no cilpas;
- Tiklīdz tas noticis, programma pēc projekta ciklā "gāja" būvniecībā.
Šī ir būtiska atšķirība no tā, ka no atkārtošanas, ti, cikla ar priekšnosacījumu no postcondition.
Ir ļoti svarīgi nodrošināt cilpa ķermenī galīgo izmaiņas norādītajā mainīgajā pozīcijā Gan. Jebkurā gadījumā kādreiz būtu jānāk situācijā, kas piešķirtu vērtību False. Pretējā gadījumā cilpa notiks, un tad jums būs jāizmanto papildu pasākumi, lai izietu no kompilatora. Šādas kļūdas tiek uzskatītas par nežēlīgām un nepieprasāmām.
Kā es varu iziet no programmas cilpu laikā?
Bieži vien situācija rodas, kad gan Pascal operators izdzēš cilni rakstītajā kodā. Ko tas nozīmē? Iterāciju atkārtojas bezgalīgi daudz reižu, jo nosacījums vienmēr ir taisnība. Piemēram, šeit ir fragments no programmas:
- Lai gan 2> 1 do;
- Uzrakstiet (1).
Šajā gadījumā, lai apturētu uzdevumu, vienkārši nospiediet CTRL + F2.
Ir arī 2 veidi, kā kontrolēt šo programmas darbību. Piemēram, ja jūs ievadāt kodu Continue, kas pārsūtīs vadību uz cikliskās konstrukcijas sākumu (šeit tiek kontrolēts izejas stāvoklis no cilpas, t.i., pašreizējās iterācijas izpilde tiks pārtraukta). Tad kontrole tiek nodota cilnes Kauss iepriekšējā pārbaudē.
Pārtraukuma paziņojums spēj pārtraukt visas cilpas izpildi un nodot kontroli nākamajai iterācijai. Šeit struktūras produkcija netiks kontrolēta. Attēlā parādīti piemēri šo operatoru izmantošanai.
Problēmu risināšana
Apsveriet Kaulu cilpu. Pascal uzdevums ir atrisināt daudzveidību. Apskatīsim vienkāršāko, lai saprastu darba principu. Atrisināti uzdevumi programmā Pascal ABC. Bet klasiskās Turbo Pascal attēli tiks prezentēti salīdzināšanai.
1. uzdevums: ņemot vērā funkciju Y = 5-X ^ 2/2. Izveidojiet vērtību tabulu ar pakāpi sh = 0,5 intervālā [-5, 5].
Darbību algoritms:
- Iestatiet sākotnējo vērtību mainīgajam X, kas vienāds ar -5 (tas ir, intervāla sākums);
- Aprēķiniet Y vērtību, līdz mainīgais x sasniedz noteiktā segmenta beigas;
- Parāda funkcijas un abscisu vērtības (X);
- Palieliniet X ar konkrēto solījumu.
Šis ir kods Pascal ABC programmā.
Kāds kods izskatās Turbo Pascal? Attēls zemāk parāda to skaidri.
2. uzdevums: Ņemot masīvu A, kas sastāv no pozitīviem vesels skaitļiem un negatīviem skaitļiem. Tas satur 10 elementus. Ir jāizveido matrica B, kurā tiks parādīti pozitīvi elementi masīva A ar vienmērīgu indeksu. Ekrānā parādās kvadrātu summa jaunās matricas skaitā.
Darbību algoritms:
- Ir nepieciešams uzrakstīt apakšprogrammu, kas "darbosies" tikai ar masīva A elementiem ar vienmērīgu indeksu. Kontūrā mainīgā lieluma vērtība, kas ir atbildīga par indeksa paritāti, palielināsies par 2.
- Ja numurs ar vienmērīgu indeksu no matricas A atbilst nosacījumam x> 0, tad masīvu elementu skaitītājs tiek palielināts par 1. Pašreizējā skaitļa mainīgā vērtība ir kopējā skaitļa indekss masīvā B.
- Sākotnēji summa, kura ir atbildīga par pozitīvo skaitļu kvadrātu summas noteikšanu, tiek piešķirta 0. Tad tiek veikta operācija: pirms iepriekšējās summas tiek pievienota jauna kvadrāta vērtība.
- Nebaidieties, ja ne visi pozitīvie skaitļi ir pārvietoti no vienas matricas uz otru. Jums jābūt uzmanīgiem. Daudzi iesācēju programmētāji pārrakstīt kodu panikā. Mums rūpīgi jāpārbauda nosacījums: pozitīvie skaitļi atrodas pat "vietās", tas ir, ar indeksiem, kas ir daudzkārtīgi ar 2.
Lai nodrošinātu aprēķinu pareizību, ir jāveic manuāla izsekošana. Dažreiz ar šīs metodes palīdzību jūs varat identificēt kļūdas, kas nerodas jūsu acīs, kad parasti pārbaudāt rakstīto kodu.
Ja veicat manuālos aprēķinus, varat pārliecināties, ka programma darbojas pareizi. Tas, savukārt, norāda, ka koda izveides algoritms ir pareizs, darbību virkne noved pie loģiskā mērķa.
Similar articles
Trending Now