ЭЭМПрограммалык камсыздоо

Turbo Pascal. Ал эми ... эмне - бир шарт менен укурук

Turbo Pascal Бирок программалоо дүйнөнүн сүйүктүү колдонмо эмес, Жаратуучу, программалык жазуу жүзүндө алардын алгачкы кадамдарын таштап жаткандыгын, бул чөйрө менен өз билгенин башталат. Бул натыйжасы, операторлордун, милдеттерин, ошондой эле жол-бир ой, ошондой эле көптөгөн башка нерселерди берет. Мисалы, Turbo Pascal окуу программист бети чен: жатканда, жана кайталоо.

айлануусун жана анын генеалогиялык түшүнүгү

Бир айлампасы Кайталанган бир иш-аракет болуп саналат. Бул чөйрөдө колдонулат, тактап айтканда:

  • параметр (For ... үчүн ... эмне менен);
  • шарт (жүргөндө ... до) менен;
  • бир postcondition (кайра ... чейин).

Бул көйгөйдү чечүү боюнча канча кадамдарды белгилүү болгон биринчи түрү колдонулат. Бирок, көп жолу кайталанган же бул иш-чаралар болот кандай тууралуу эч кандай маалымат жок бир катар милдеттерди, бар. Бул учурда, Pascal негизинен цикл, мисалы, сөзсүз, калат да, жана кайра кайталаъыз.

айлампасынын түзүмү

Анткени, Pascal While иштин өзөгү болуп саналат жана ирекет Кайталап эмне? Мындай курулуштарды бир аталышы жана дене бөлөт. "Жумуш" дене аткарылат турган колдонуу мөөнөтү жөнүндө шарттар каралган болот көрсөтүлгөн өзгөрмөлөр биринчи компоненти. белгиленген сөздөрдү экинчи бөлүгүндө абалы учурда колдонула турган, башкача айтканда. E. чыныгы жашоо ордуна жалган жашоо менен.

кайталоо кодексинин акыркы сапта аткарылган болсо, анда ал абалы текшерилет баш, кайтып келди. чындык аракеттер кайталанып жатса, ал эми айлампасынын программасы "чыгуу" бузуу учурунда жана андан аркы иштерди аткарат.

айлантып жатканда келбетине карманууда. Pascal ABC жана программаларды, мисалы, код жазып талап:

  • абалда жатканда эмне;
  • баштоо;
  • луп органы;
  • Аягы.

укурук 1 операторго (1-аракеттерди) жүзөгө ашырылат учурда, анда: "кашаанын" башталат ... акыры капарга албай коюуга болбойт.

блок цикл

Turbo Pascal төмөнкүдөй белгилердин жатканда:

  • структурасында ички шарттарды колдонуу кыйын болушу мүмкүн;
  • сөздөн кийин үтүр менен эмес, керек (бул Turbo Pascal жана Pascal КИК бир ката болуп эсептелет);
  • өзгөрмөлүү, аларды сабрутиндер жооп False чыгаруу сөзсүз эле логикалык түрү, башкача айтканда. болуш керек кызмат кылат деп дайыма же сөз айкашы. логикалык.

Бул ар кандай айлануусун блок-схема төмөнкүчө чагылдырууга болот. Бул ишке ашыруу аракеттеринин ыраатын көрсөтөт.

айлампасынын алгоритми

.. Pascal КИК жөнөкөй программалоо чөйрөлөр, м жана ч, укурук төмөнкү негизинде иштейт жатканда:

  • .. эске кайталоо, башкача айтканда, кайталоо, абалы сыяктуу көп көп жолу ишке чындык (чыныгы) деп кабыл алат;
  • тезирээк шарт канааттандырбайт, False жооп берет (же андай эмес болсо, "Жалган"), курс таап, оператор катары;
  • ошондой эле бул окуя тез арада, программа айлампасынын кийин пайда болгон долбоордо "барды".

Бул Кайталанган, т. E. postconditions бир чейинки айлампасы да бир кыйла айырма бар.

Бул берилген өзгөрүүчү баш While менен укурук чектүү өзгөртүү киргизүү үчүн маанилүү болуп саналат. Кандай болбосун, эч качан жалган берген жагдайга туура келет. Болбосо бир укурук болот, анан Түзүүчүнүн чыгуусуна боюнча кошумча чараларды кабыл алуу керек. Мындай каталар орой жана актана эсептелет.

тебүү, ал эми программаны кантип чыгуу керек?

Көп учурда кырдаал оператору жазылган программа коду жүргөндө Pascal илмеги бергенде пайда болот. Бул эмнени билдирет? Iteration шарты ар дайым чындык болуп саналат, анткени, чексиз кайталанат. Мисалы, бул код үзүндүсү:

  • Ал эми 2> 1 кыл;
  • Жазуу (1).

Бул учурда, бир гана CTRL + F2 басып, тапшырманы аткарууну токтото турууга.

Мындай пограмма-турушун башкаруу үчүн 2 жолу бар. Мисалы, жаз туруучу структурасы башына көзөмөлгө өтөт коду уланта берсе, (ушул Кодексте укурук чыгуу абалы текшерилип турат, башкача айтканда, азыркы учурда бир кадамынын E аткаруу үзгүлтүккө учурайт.). Андан кийин контролдук мурдагы сыноонун бир да илмегинде өткөрүлүп берилет.

Break оператору бүт айлампасынын аткарылышын токтото жана кийинки башкарууну которо аласыз. Бул жерде, курулуш чыгуу көзөмөлгө алынбайт. Сүрөттө бул операторлорунун пайдалануу мисалдар көрсөтүп турат.

кыйынчылыктарга жолугушуу

операция айланышында While карап көрөлү. Pascal ар кандай маселени чечүү үчүн сунуш кылат. Кудайдын иш-түшүнүү үчүн жөнөкөй бир карап чыгалы. Pascal ABC программасына чечилген маселелер. Бирок сунуш жана салыштыруу үчүн классикалык Turbo Pascal айланасындагы сүрөттөлүш болот.

1-тапшырма: милдети берилген Y = 5-X ^ 2/2. Айрым өсүндүлөр Ш. баалуулуктарга жадыбалын түзүү = 0,5 ашуун аралыгында [-5, 5].

алгоритми:

  • 5 (б.а. ажырым башынан ..) барабар баштапкы наркы өзгөрмө X коюуга;
  • өзгөрмө х деди аралыгында акыры ишке ашпайт, ал эми Y наркты эсептөө;
  • милдеттерин жана abscissa (X) баалуулуктарын көрсөтүү;
  • алдын ала кадам X көбөйтүү.

Бул жерде Pascal ABC программасына коду саналат.

Кантип Turbo Pascal программасында кодун кылат. Сүрөт төмөн турат.

2-тапшырма: бардык оң жана терс сан турган көптөгөн берилген. Ал 10-ден камтыйт. турган булагы түзүү зарылчылыгы киет А оң элементтер да индекси менен көрсөтүлгөн. жаңы пределдер саны аянттарында суммасын көрсөтүү.

алгоритми:

  • Сиз гана киет А элементтери менен "иш" да индекси ээ болот үзгүлтүксүз жазууга тийиш. Укурукта индексинин балансташкан ылайык өзгөрүлмө балл эки чогулткан болот.
  • саны булагына бир да индекси болсо бир абалга келет х> 0, каршы тутуму 1. чогулткан жатат эсептегич учурдагы наркы көрүүнүн Б. көчүрмөсү санынын көрсөткүчү болот
  • Башында, өзгөрүлмө Summa, оң бүтүн аянттарында суммасын табуу үчүн жооптуу болот, Андан кийин 0. коюлса, операция ишке ашырылат: мурдагы суммада үчүн аянттын жаңы наркын кошулат.
  • бардык оң саны бир катар көчүп жок болсо, коркуп болбо. Сиз этият болушу керек. Көптөгөн башталгыч программисттер үрөйүн кодду көчүрүүнү тапшырды. Ал кунт коюп абалын иликтеп чыгуу зарыл: ал тургай "жергиликтүү" бар оң саны, башкача айтканда, 2 эсеси болгон индекстер менен ...

тартиби берилгендик эсептөө камсыз кылуу үчүн кол менен көз салуу зарыл. Кээде, бул ыкманы колдонуу менен жазуу түрүндөгү кадимки текшерүү боюнча көз кармай алышпайт каталарды аныктоо болот.

Биз кол, эсептешүүлөрдү жүзөгө ашыруу болсо, бул программа туура камсыз кылуу мүмкүн эмес. Бул, өз кезегинде, коду муун алгоритми, туура иш-чаралардын тизмеги логикалык акырына чейин алып келет деп билдирди.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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