Kompjuters, Softwer
Turbo Pascal. Filwaqt ... do - linja ma prekondizzjoni
Turbo Pascal, għalkemm mhuwiex applikazzjoni favorit tad-dinja għall-ipprogrammar, iżda l-ħallieqa, jagħmlu l-ewwel passi tagħhom fid-miktub tas-software, bidu familjarità tagħhom ma 'dan il-medju. Hija tagħti idea tal-ramifikazzjonijiet, l-operaturi, il-funzjonijiet, u l-proċeduri, kif ukoll ħafna affarijiet oħra. Per eżempju, fil-ċikli wiċċ programmer studju fil Turbo Pascal: Filwaqt, għall u Irrepeti.
Il-kunċett taċ-ċiklu u l-varjanti tagħha
Ċiklu hija azzjoni ripetittivi. F'dan l-ambjent, l-użu:
- ma parametru (Għal ... sa ... do);
- mal-kundizzjoni (Filwaqt ... do);
- a postcondition (Irrepeti ... sa).
L-ewwel tip huwa użat meta jkun magħruf kemm passi sabiex issolvi l-problema. Madankollu, hemm għadd ta 'kompiti, fejn m'hemmx informazzjoni dwar kif ħafna drabi se jiġi ripetut jew dik l-azzjoni. F'dan il-każ, Pascal Filwaqt ċiklu isir indispensabbli, bħal, fil-prinċipju, u Irrepeti.
L-istruttura taċ-ċiklu
X'inhu l-essenza tal-ħidma fil-Filwaqt Pascal, Għall u Irrepeti ċikli? F'tali kostruzzjonijiet jallokaw header u korp. L-ewwel komponent tal-varjabbli speċifikati li se "xogħol" huma speċifikati mill-kundizzjonijiet fuq il-perjodu ta 'validità li fih ser jiġu esegwiti l-ġisem. Fit-tieni parti ta 'espressjonijiet preskritti li għandhom jintużaw fil-każ tal-kundizzjoni, jiġifieri. E. Veru L-, minflok Foloz Il.
Meta iterazzjoni hija mwettqa fl-aħħar linja tal-kodiċi, allura dan jirritorna għall-header, fejn il-kundizzjoni hija ttestjata. Jekk l-operazzjonijiet verità huma ripetuti, u fil-każ ta 'kwalunkwe ksur tal-programm "Ħruġ" mill-ċiklu u twettaq aktar operazzjonijiet.
Issegwi jistenna Filwaqt linja. Pascal ABC u programmi bħal dawn jeħtieġu miktub bħal kodiċi:
- Filwaqt kundizzjoni tagħmel;
- tibda;
- Il-korp linja;
- Tmiem.
Fil-każ li l-linja se jsir 1 operatur (1 azzjoni), allura l-"parentesi» tibda ... aħħari jkun jista 'jitħalla barra.
ċiklu flowchart
Il Pascal Turbo Filwaqt li l-karatteristiċi li ġejjin:
- ġewwa l-istruttura tista 'tkun diffiċli biex jintużaw kondizzjonijiet;
- wara l-kelma ma għandu jkun hemm virgola (huwa meqjus bug fil Turbo Pascal u Pascal ABC);
- varjabbli, kostanti jew espressjoni li jservi meta tweġiba output Foloz minnhom subroutines għandhom neċessarjament ikunu tip loġiku, jiġifieri. e. Boolean.
Huwa kif ġej dijagramma blokka taċ-ċiklu varjetà. Din turi l-sekwenza ta 'azzjonijiet ta' implimentazzjoni.
L-algoritmu taċ-ċiklu
.. Fil-aktar sempliċi ambjenti programmazzjoni, mu h Pascal ABC, Filwaqt linja topera fuq il-prinċipju li ġejja:
- .. iterazzjoni Minħabba, jiġifieri, ripetizzjoni, se sseħħ kemm drabi sakemm il-kundizzjoni huwa veru (Veru);
- hekk kif il-kundizzjoni mhijiex sodisfatta u jagħti tweġiba Falza (jew inkella "Foloz"), l-operatur barra mill-linja;
- hekk kif ġara, il-programm "marru" fid-disinn li jidher wara ċiklu.
Din hija differenza sinifikanti mill Waqt Irrepeti, t. E. Pre-ċiklu mill-postconditions.
Huwa importanti li jinkludu fil-linja bidla finit fil Filwaqt partikolari header varjabbli. Fi kwalunkwe każ, għandu qatt sitwazzjoni li tagħti lill Foloz. Inkella se jkun hemm linja, u mbagħad għandhom jieħdu miżuri addizzjonali biex 'ħruġ mill-kompilatur. Żbalji bħal dawn huma kkunsidrati rude u mhux skużabbli.
Kif ħruġ tal-programm waqt li ċikliżmu?
Spiss il-sitwazzjoni sseħħ meta l-operatur jagħti Filwaqt linja Pascal fil-kodiċi tal-programm bil-miktub. Xi jfisser dan? Iterazzjoni hija ripetuta numru infinit ta 'drabi, minħabba li l-kundizzjoni hija dejjem veru. Per eżempju, dan il-kodiċi framment:
- Filwaqt 2> 1 tagħmel;
- Ikteb (1).
F'dan il-każ, li jinterrompu l-eżekuzzjoni tal-kompitu, biss għall-istampa CTRL + F2.
Hemm 2 modi biex jikkontrollaw l-imġiba ta 'tali programm. Per eżempju, jekk tikteb Kompli kodiċi li jgħaddi kontroll għall-bidu tal-istruttura ċikliku (hawnhekk il-kondizzjoni ħruġ linja hija mmonitorjata, jiġifieri. Esekuzzjoni E tal-iterazzjoni attwali huwa interrott). Imbagħad il-kontroll jiġi ttrasferit fil-linja Filwaqt fit-test ta 'qabel.
operatur waqfa tista 'tinterrompi l-eżekuzzjoni taċ-ċiklu kollu u jittrasferixxu kontroll għall-iterazzjoni li jmiss. Hawnhekk, l-output tal-kostruzzjoni mhux se jiġu kkontrollati. L-istampa turi eżempji tal-użu ta 'dawn l-operaturi.
Nilqgħu l-isfidi
Ikkunsidra Filwaqt fiċ-ċiklu operazzjoni. Pascal tipproponi li ssolvi l-problema varjata. Ejja jikkunsidraw sempliċi biex jifhmu l-operazzjoni. kompiti solvuti fil-programm Pascal ABC. Iżda se jiġu ppreżentati u l-immaġni ta 'klassika ambjent Turbo Pascal għall-paragun.
Kompitu 1: minħabba l-funzjoni Y = 5-X ^ 2/2. Oħloq tabella ta 'valuri fl-sh b'żidiet = 0,5 fuq l-intervall [-5, 5].
L-algoritmu huwa:
- tistabbilixxi X varjabbli għal valur inizjali ugwali għal 5 (jiġifieri l-bidu tad-differenza ..);
- jikkalkulaw valur Y, filwaqt li l-varjabbli x ma jilħqu t-tmiem tal-imsemmi intervall;
- juru l-valuri tal-funzjoni u l-axxiża (X);
- X żieda minn pass predeterminat.
Hawnhekk huwa l-kodiċi fil-programm Pascal ABC.
Kif il-kodiċi fil-programm Turbo Pascal. L-immaġni hawn taħt turi din.
Kompitu 2: mogħti firxa A magħmul min-numri pożittivi u negattivi kollha. Fiha 10 oġġetti. Il-ħtieġa biex jiffurmaw matriċi li fiha l-elementi pożittivi tal-firxa A huma murija jkollhom saħansitra indiċi. Uri is-somma tal-kwadrati fin-numru ta 'matriċi ġdida.
L-algoritmu huwa:
- Trid tikteb rutina li se "xogħol" biss mal-elementi tal-firxa A li jkollhom saħansitra indiċi. Fil-linja valur varjabbli li jikkorrispondi għall-parità tal-indiċi għandha tkun inkrementat bi tnejn.
- Jekk in-numru huwa saħansitra indiċi mill-matriċi A jikkorrispondi għall-kundizzjoni x> 0, l-array kontro jiġi inkrementat mill 1. Il-valur attwali tal-varjabbli kontro se jkun l-indiċi tan-numru kopja fil-firxa B.
- Inizjalment, il-summa varjabbli, huwa responsabbli għall-konstatazzjoni-somma tal-kwadri ta 'numri interi pożittivi, huwa stabbilit għal 0. Imbagħad, l-operazzjoni se jitwettqu: is-somma ta' qabel huwa miżjud il-valur il-ġdid ta 'kwadru.
- Ma jkun jibża, jekk mhux in-numri pożittivi kollha imċaqlaq minn firxa għall-ieħor. Int għandek tkun attenta. Ħafna programmaturi novizzi li jikteb il-kodiċi fil-paniku. Huwa meħtieġ li tiġi eżaminata bir-reqqa l-kundizzjoni: numri pożittivi li huma fuq anki "lokali", jiġifieri, bl-indiċi li huma multipli ta '2 ...
traċċar manwali huwa meħtieġ sabiex jiġi żgurat li l-kalkolu ta 'lealtà. Kultant, bl-użu dan il-metodu tista 'tidentifika żbalji li ma jaqbdu l-għajn taħt spezzjoni normali tal-kodiċi bil-miktub.
Jekk aħna jwettaq kalkoli manwali, huwa possibbli li jiġi żgurat li l-programm jaħdem kif suppost. Dan, imbagħad, qal li l-algoritmu ġenerazzjoni kodiċi hija korretta, is-sekwenza ta 'azzjonijiet twassal għal tmiem loġiku.
Similar articles
Trending Now