ComputereSoftware

Turbo Pascal. Mens ... do - løkke med en forudsætning

Turbo Pascal, er dog ikke verdens foretrukne program til programmering, men skaberne, hvilket gør deres første skridt i skrivning af softwaren, starte deres bekendtskab med dette medie. Det giver en idé om forgreninger, operatører, funktioner og procedurer, samt mange andre ting. For eksempel, i studiet programmør ansigt cykler i Turbo Pascal: Mens, Til og Gentag.

Begrebet cyklen og dens varianter

En cyklus er en gentagen handling. I dette miljø, skal du bruge:

  • med parameter (For ... til ... DO);
  • med forudsætningen (Mens ... do);
  • en postcondition (Repeat ... indtil).

Den første type anvendes, når det er kendt, hvor mange skridt til at løse problemet. Men der er en række opgaver, hvor der ikke er oplysninger om, hvor mange gange vil blive gentaget eller handlingen. I dette tilfælde, Pascal Mens cyklus bliver uundværlig, såsom i princippet og Gentag.

Strukturen af cyklussen

Hvad er essensen af arbejdet i Pascal Mens, Til og Gentag cykler? I sådanne konstruktioner tildele en header og en krop. Den første komponent af de angivne variable, som vil "arbejde" er specificeret af forholdene på gyldighedsperioden, som kroppen vil blive henrettet. I den anden del af foreskrevne udtryk, der skal bruges i tilfælde af tilstanden, dvs.. E. Ægte Den, i stedet for Falsk Den.

Når iteration udføres på den sidste linje kode, så det vender tilbage til overskriften, hvor betingelsen er testet. Hvis sandheden operationer gentages, og i tilfælde af brud på programmet "Exit" fra cyklen og udfører yderligere operationer.

Følger udseende while-løkke. Pascal ABC og sådanne programmer kræver at skrive sådan kode:

  • Mens tilstand gør;
  • Begynd;
  • Sløjfelegemets;
  • End.

I tilfælde af at sløjfen vil blive udført 1 operatør (1 handling), derefter de "parenteser» begynde ... ende kan udelades.

Flowchart cyklus

Turbo Pascal Mens følgende funktioner:

  • inde i strukturen kan være vanskeligt at anvende betingelser;
  • efter ordet gøre bør ikke være et komma (det betragtes som en fejl i Turbo Pascal og Pascal ABC);
  • variabel, konstant eller udtryk, der tjener, når et svar Falsk output dem subrutiner nødvendigvis må være logisk form, det vil sige. e. Boolean.

Det er således blokdiagram af sorten cyklus. Det viser den sekvens af handlinger gennemførelsen.

Algoritmen af cyklen

.. I den simpleste programmering miljøer, m og h i Pascal ABC, mens løkken virker på følgende princip:

  • .. Givet iteration, dvs. gentagelse, vil finde sted så mange gange, så længe betingelse er sand (sand);
  • så snart betingelse er ikke opfyldt og giver False svar (eller på anden måde "Falsk"), er operatøren ud af løkken;
  • så snart det er sket, programmet "gik" i mellem designet efter cyklus.

Dette er en væsentlig forskel fra Mens Repeat, t. E. En præ-cyklus fra postconditions.

Det er vigtigt at medtage i sløjfen finite ændring i en given variabel header Mens. Under alle omstændigheder nogensinde skulle komme en situation, der giver til False. Ellers vil der være en løkke, og derefter nødt til at træffe yderligere foranstaltninger for at forlade compiler. Sådanne fejl betragtes uhøflig og utilgiveligt.

Sådan afslutte programmet, mens cykling?

Ofte er situationen opstår, når operatøren giver Mens Pascal løkke i den skriftlige programkode. Hvad betyder det? Iteration gentages et uendeligt antal gange, fordi betingelsen er altid sandt. For eksempel denne kode fragment:

  • Mens 2> 1 gøre;
  • Skriv (1).

I dette tilfælde, at afbryde udførelsen af opgaven, skal du blot trykke på CTRL + F2.

Der er 2 måder at styre hvordan et sådant program. For eksempel, hvis en skrive Fortsæt kode, der passerer kontrollen til begyndelsen af den cykliske struktur (heri sløjfen exit tilstand overvåges, dvs.. E udførelse af den aktuelle iteration afbrydes). Derefter kontrol overføres i en Mens løkke i den foregående test.

Break operatør kan afbryde udførelsen af hele cyklussen og overdrage kontrollen til den næste iteration. Her vil produktionen af konstruktionen ikke styres. Billedet viser eksempler på brugen af disse operatører.

Udfordringerne

Overveje Mens i drift cyklus. Pascal foreslår at løse problemet varieres. Lad os betragte en enkel at forstå driften. Løst opgaver i Pascal ABC-programmet. Men vil blive præsenteret og billedet af klassisk Turbo Pascal miljø til sammenligning.

Opgave 1: givet funktionen Y = 5-X ^ 2/2. Skabe en tabel med værdier i intervaller sh = 0,5 over intervallet [-5, 5].

Algoritmen er:

  • sætte en variabel X til en startværdi på 5 (dvs. begyndelsen af mellemrummet ..);
  • beregne en Y-værdi, mens den variable x ikke når enden af nævnte interval;
  • vise værdierne af funktionen og abscissen (X);
  • X stigning med en forudbestemt trin.

Her er koden i Pascal ABC-programmet.

Hvordan koden i Turbo Pascal-program. Billedet nedenfor illustrerer dette.

Opgave 2: givet et array A bestående af hele positive og negative tal. Den indeholder 10 emner. Behovet for at danne en matrix, hvori de positive elementer i række A vises har et lige indeks. Vis summen af kvadraterne i antallet af nye matrix.

Algoritmen er:

  • Du skal skrive en rutine, der vil "arbejde" kun med elementerne i array A, der har en endnu indeks. I sløjfen variable værdi svarende til pariteten af indekset vil blive forøget med to.
  • Hvis nummeret er et lige indeks fra matrixen A svarer til den tilstand, x> 0, kontra arrayet inkrementeres med 1. Den aktuelle værdi af tælleren variabel vil være indekset af kopiantallet i array B.
  • I første omgang, den variable summa, er ansvarlig for at finde summen af kvadraterne af positive heltal, er sat til 0. Derefter vil operationen blive udført: til den tidligere sum tilføjes den nye værdi af et kvadrat.
  • Du skal ikke være bange, hvis ikke alle positive tal flyttes fra et system til et andet. Du er nødt til at være forsigtig. Mange uerfarne programmører til at omskrive koden i panik. Det er nødvendigt at nøje undersøge tilstanden: positive tal, der er på selv "lokalt", det vil sige, med indeksene, der er multipla af 2 ...

Manuel sporing er nødvendig for at sikre, at beregningen af loyalitet. Nogle gange kan bruge denne metode identificere fejl, der ikke fanger øjet ved normal inspektion af det skrevne kode.

Hvis vi udfører manuelle beregninger, er det muligt at sikre, at programmet fungerer korrekt. Dette vil igen, sagde, at koden generation algoritme er korrekt, den sekvens af handlinger fører til en logisk ende.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 da.delachieve.com. Theme powered by WordPress.