РачунариСофтвер

Турбо Пасцал. Док је ... то је петља са предусловом

Турбо Пасцал, иако није светска омиљена апликација за програмирање, али креатори који праве прве кораке у писању софтвера, почињу да се упознају са овим окружењем. Она даје идеју о гранању, оператерима, функцијама и процедурама, као и многим другим стварима. На пример, током учења, програмер ће се сусрести циклуса у Турбо Пасцал: Док, За, и Понављају.

Концепт циклуса и његове разноликости

Циклус се зове поновљени поступци. У овом окружењу користимо:

  • Са параметром (За ... да ... урадите);
  • Са предусловом (Док ... урадите);
  • Са посткондицијом (Поновите ... до).

Прва врста се користи када је унапред познато колико корака у решавању проблема. Међутим, постоји низ задатака када нема података о томе колико пута ће се поновити једна или друга акција. У овом случају, у Пасцалу Док циклус постаје неопходан, као што је, у принципу, и Понављање.

Структура циклуса

Која је суштина рада у Пасцал-у Док, За и Поновите циклус? Ове структуре имају заглавље и тело. Прва компонента наводи варијабле које ће "радити", прецизирају се услови за потврђивање истине, период на који ће тело извршити. У другој компоненти су написани изрази који се морају користити ако је испуњен услов, односно Труе, а не Фалсе.

Када се изведе итерација на последњој линији кода, онда се враћа у заглавље где се стање проверава. У случају истине, операције се понављају, ау случају неиспуњавања стања, програм "напушта" циклус и врши даље радње.

Ток циклуса изгледа овако. Пасцал АБЦ и слични програми захтевају писање овог кода:

  • Док стање чини;
  • Почните;
  • Тело циклуса;
  • Крај.

У случају да се 1 извршилац (1 радња) изврши у тијелу петље, тада се завршни загради "започне" могу изоставити.

Дијаграм циклуса

У Турбо Пасцал-у Док садржи следеће карактеристике:

  • Комплексни услови могу се користити унутар структуре;
  • Након речи, не би требало да постоји тачка и тачка (ово се сматра грешком у Турбо Пасцал и Пасцал АБЦ);
  • Варијабилни, константни или израз који се користи при добијању лажног излаза из њихове потпрограма мора бити логичан тип, то јест, Боолеан.

Блок дијаграм ове верзије циклуса изгледа овако. Приказује низ акција.

Алгоритам циклуса

У најједноставнијим програмским окружењима, укључујући Пасцал АБЦ, док петља ради према следећем принципу:

  • Дане итерације, тј. Понављања, ће проћи толико пута док стање не буде истинито (тачно);
  • Чим услов није задовољен и даје Лажни одговор (или на други начин "Лаж"), изјава излази из петље;
  • Чим се то десило, програм је "почео" у изградњи, након циклуса.

Ово је суштинска разлика од "Док је из понављања", тј. Циклус са предусловом из постцондиције.

Веома је важно да у телу петље обезбедите коначну промену на одређену варијаблу у наслову Док. У сваком случају, некада би требало да дође ситуација која даје вредност Фалсе. Иначе ће се појавити петља, а затим ћете морати да користите додатне мере за излазак из компајлера. Такве грешке се сматрају грубим и непроходним.

Како да изађем из програма током петље?

Често се ситуација јавља када оператор Вхиле Пасцал изда петљу у писаном коду. Шта то значи? Итерација се понавља бескрајан број пута, јер је стање увек тачно. На примјер, овдје је фрагмент програма:

  • Док 2> 1 уради;
  • Напишите (1).

У том случају, да бисте зауставили задатак, само притисните ЦТРЛ + Ф2.

Постоје и 2 начина за контролу овог понашања програма. На пример, ако унесете у код Цонтинуе, који ће пренети контролу на почетак цикличне конструкције (овде се контролише излазни услов из петље, тј. Извршавање тренутне итерације ће бити прекинуто). Затим контрола пролази кроз циклус "Вхиле" до претходне провере.

Изјава Бреак може да прекине извршење читаве петље и пропушта контролу на следећу итерацију. Овде се излаз из структуре неће контролисати. Слика приказује примере кориштења ових оператора.

Решавање проблема

Размислите о циклусу Док. Задатак Паскала је решити широку разноликост. Хајде да се задржимо на најједноставнији док разумемо принцип рада. Решени задаци у програму Пасцал АБЦ. Али слике класичног окружења Турбо Пасцал ће бити представљене за упоређивање.

Задатак 1: Дати функцију И = 5-Кс ^ 2/2. Креирајте таблицу вриједности са кораком сх = 0.5 на интервалу [-5; 5].

Алгоритам акција:

  • Подесите почетну вриједност за варијаблу Кс једнака -5 (тј. Почетак интервала);
  • Израчунајте вредност И док променљива к не достигне крај одређеног сегмента;
  • Приказати вредности функције и абсциса (Кс);
  • Повећајте Кс према датом кораку.

Ово је код у програму Пасцал АБЦ.

Како код изгледа изгледа у Турбо Пасцалу. Слика испод показује то јасно.

Задатак 2: Дати низ А, састављен од позитивних цјелина и негативних бројева. Садржи 10 елемената. Неопходно је формирати матрицу Б, у којој ће бити приказани позитивни елементи поља А са једнаким индексом. На екрану прикажите збир квадрата у броју нове матрице.

Алгоритам акција:

  • Потребно је писати подпрограм који ће "радити" само са елементима поља А који имају једнак индекс. У петљи, вредност варијабле која је одговорна за паритет индекса ће се повећати за 2.
  • Ако број са једнаким индексом из матрице А одговара услову к> 0, онда се бројач елемената низа повећава са 1. Тренутна вриједност бројачице бројача ће бити индекс копираног броја у низу Б.
  • На почетку, суму, која је одговорна за проналажење суме квадрата позитивних бројева, додељује се 0. Тада ће се извршити операција: нову вриједност квадрата додаје се у претходни износ.
  • Немојте се плашити ако нису сви позитивни бројеви прешли из једне матрице у другу. Мораш бити опрезан. Многи почетници програмери преписују код у паници. Морамо пажљиво проучити стање: позитивни бројеви који се налазе на чак "мјестима", то јест, имају индексе који су вишеструки од 2.

Ручни траг је неопходан како би се потврдила исправност израчунавања. Понекад помоћу ове методе можете идентификовати грешке које не долазе у очи када нормално проверавате писани код.

Ако вршите ручне израчуне, можете се уверити да програм ради исправно. Ово, пак, указује да је алгоритам за креирање кода тачан, низ акција води до логичког краја.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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