KompjutersSoftwer

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

 

 

 

 

Newest

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