/ / Програмиране. Цикли на параметрите

Програмиране. Параметърни контури

Особенное место в Turbo Pascal занимают циклы.Те започват да учат веднага след практикуването на уменията за входно-изходна информация на екрана. В крайна сметка, повечето от задачите се свеждат до факта, че циклите с параметъра и други конструкции спомагат за улесняване на писането и функционирането на конкретен блок от програмата.

параметрични вериги

Разнообразие от цикли

Има три вида:

  • с параметър
  • с предварително условие
  • с пост-условие.

Параметрите на веригите, в противен случай те се наричат ​​За ... до ...направи или За ... downto .... направете, повторете определена последователност от действия. По принцип, други сортове се използват за същата цел, но само в цикъла броят на стъпките е известен предварително.

В две други конструкции (Докато и Повторение) броят на повторенията първоначално е неизвестен. Затова при изучаването на дадена задача вече е необходимо да се разбере кой цикъл ще се използва.

Основни определения по темата

Циклы с параметрами – многократно повторяющиеся итерация. Броячът е основният индикатор, с който се изпълнява зададената конструкция. Границите на пропастта показват степента, до която ще се изпълняват определени повторения. Между другото, изобщо не е необходимо първоначалната стойност да е равна на 1. Потребителят самостоятелно задава двете граници на празнината. Тялото на цикъла е набор от команди, за които вече е определен броят на повторенията.

Терминът "контури с параметри" означава, че вот тази конструкция се проверява състоянието, след което се извършва набор от итерации. Броячът се увеличава (или намалява) и всичко се повтаря. Тялото на цикъла ще се използва, докато условието е вярно.

За ... да ... направи: алгоритъм на работа, синтаксис

Както вече споменахме, цикли с параметър се използват в задачи, които определят "интервала", в който да се работи. Така че, това може да бъде масив от числа, дни от седмицата, редове на стихотворение и т.н.

Има 2 вида конструкции: да се увеличи броячът и да се намали. Първата конструкция ще бъде написана по следния начин:

за out.променлива : = граница 1 да се граница 2 направете

започнете

контурно тяло;

край;

Тук: реф. променлива деклариран от потребителя в началото на програма или блок; граница 1 и граница 2 - началната и крайната стойност на интервала; в тяло цикъл предписани са редица действия, които трябваизпълнявани от програмата. Трябва да се помни, че ако тялото на цикъла съдържа само 1 команда, тогава скобите на оператора begin ... end могат да бъдат пропуснати. В тази версия на дизайна броячът, а именно <init.variable>, ще се увеличи със стъпка, равна на 1.

за out.променлива : = граница 1 в центъра граница 2 направете

започнете

контурно тяло;

край;

Тук реф. променливата ще намалява на стъпки от 1.

Схемата на цикличната операция с параметъра For ... to ... do ще изглежда така:

  • Задава се стойността на горната граница на процепа, т.е. граница 2.
  • Променлива на източника присвоява се стойността на параметъра граница 1.
  • Състоянието се проверява: референтна променлива ≤ граница 2.
  • При получаване на резултата Вярно (Вярно) тялото на цикъла се изпълнява.
  • Броячът се увеличава с 1.
  • Стъпки 3-5 се изпълняват точно, докато условието е вярно: референтна променлива> граница 2... Веднага след като това се случи, цикълът излиза и управлението се прехвърля към командата след дадената конструкция.

В For ... downto ... do алгоритъмът на работа е подобен на горния, с изключение на някои точки:

  • В третия параграф се проверява състоянието: референтна променлива ≥ граница 2.
  • В 5-ия ред на алгоритъма броячът се намалява с 1.
  • В шести параграф команди 3-5 ще се изпълняват, докато условието не бъде изпълнено: източник променлива <граница 2.

цикли с параметри

Всичко останало е еднакво и в двата алгоритма за работа.

Блокова диаграма на контура с параметър

Циклите с параметър имат следната форма на блок-схема (въпреки че тя вече е представена по-горе). Тук е показана и опростена организация на структурата.

цикли с параметри означава

Основни изисквания за цикъл с параметър

Цикли с параметри изискват определен вид условия.

  • Граници за контра и пропуски (т.е. реф.променлива, граница 1 и граница 2) трябва да са от същия тип данни. Ако има само съвместимост между началната и крайната стойност на сегмента и оригиналната променлива, тогава програмата може да се държи неправилно, тъй като границите ще бъдат преобразувани според типа данни на оригиналния параметър.
  • Типът данни, към който трябва да принадлежат стойностите на параметрите, трябва да е цяло число. Силно обезкуражено е да се използва истински тип.
  • Нежелателно е насилствено да се променя стойността на параметъра out.variable в тялото на цикъла. В противен случай потребителят едва ли ще може да проследи възможните грешки, които са се появили.
  • За разлика от други видове цикли, За ... да ... направи или За ... downto ... do стъпка не може да се промени към параметър, различен от 1.

Турбо Паскал: Как да се измъкнем от примката

Често има задачи, в които имацикъл, тоест провереното условие винаги е вярно. Процедурата за прекъсване помага за изваждането на цикли с предварително условие, последващо условие, параметър Тоест работата им се прекратява предсрочно.

Цикли с параметър Pascal (програмиранекоето приема "вечната" истина на състоянието) може да бъде спряно с помощта на Продължи. Тук работата е организирана по следния начин: текущата итерация завършва изпълнението си предсрочно, контролът се прехвърля към следващата команда, но без да излиза от цикъла.

Процедурата за изход е необходима, за даза да завършите работата на един или друг блок в програмния код. Извиква се вътре в процедура (функция) и в същия момент изпълнението на това „парче“ незабавно спира. Ако Exit е в основния блок на програмата, тогава тя излиза.

Процедурата за спиране свежда принципа на работа до следното: програмата се прекратява напълно.

Примери за задачи с решение

Ще бъде полезно за потребителя след изучаване на тематаПримери за "цикли с параметър в паскал" първо проучете и след това се упражнявайте да пишете кода сами. Простите задачи помагат на бъдещия програмист да научи теорията на практика и след това да я приложи успешно. По темата „Цикли с параметър“ могат да се намерят лесни и сложни примери за проблеми с решение. Ето 3 проблема, при които се анализират алгоритмите на работа и се дават обяснения и коментари за всяко решение.

Задача 1

Даден е двумерен масив от естествени числа в диапазона [0..199], избран на случаен принцип. Намерете броя на всички двуцифрени числа, чиято сума от цифри е кратна на 2.

Алгоритъм на действията:

  1. Създайте двуизмерен масив.
  2. Проверете всеки номер за съответствие с условията:

а) ако 9 <X <100, тогава го разделете изцяло на 10, като използвате div;

б) изберете втората цифра на числото, като разделите с mod;

в) добавете маркираните числа;

г) разделете на mod дадената сума на 2;

д) ако резултатът е 0, то броячът се увеличава с 1.

цикли с примерни задачи за параметри

Проблем 2

Даден е едномерен масив от цели числа. Намерете броя на положителните числа.

Алгоритъм на действията:

  1. Създайте масив от цели числа, създадени с рандомизиране.
  2. Вмъкнете условен оператор IF в цикъла с параметъра, който ще провери посочения елемент за съответствие с условието: X> 0.
  3. Ако условието е изпълнено, то броячът се увеличава с 1.
  4. След цикъла, получената стойност на брояча трябва да се покаже на екрана.

Данните в скоби {} сакоментари. В ред 11 можете да покажете масива на екрана по два начина: оставете интервал между числата или отделете определен брой клетки за всеки елемент (в този случай има 5 от тях).

В ред 12 променливата на брояча също може да бъде увеличена по два начина: или добавете 1 към предишната стойност, или използвайте стандартната функция на Inc.

цикли с параметър в примери за паскал

Задача 3

Получава се квадратна матрица. Намерете броя на положителните елементи на главния диагонал.

Обяснения:

В масив от числа основният диагонал се простира отгорния ляв ъгъл в долния десен ъгъл. Нейната особеност е фактът, че индексите на редове и колони са еднакви. Следователно е достатъчно да организирате 1 цикъл, за да се движите през линиите, без да преминавате през останалите елементи.

Алгоритъм на действията:

  1. Създайте квадратна матрица.
  2. Задайте променливата, отговорна за броене на положителни елементи, на стойност "0".
  3. Създайте цикъл за създаване на квадратна матрица.
  4. Организирайте цикъл, за да проверите състоянието: ако числото на главния диагонал> 0, тогава броячът се увеличава с 1.
  5. След края на цикъла, покажете стойността на променливата, съхраняваща броя положителни елементи на екрана.

цикли с програмиране на параметри на паскал

Противопоставянето на два езика за програмиране: C и Turbo Pascal

Като правило, уважаващият себе си програмист знаеняколко езика. Например, това може да е C ++, Turbo Pascal, Delphi, Java и др. Конфронтацията между двамата беше ясно изразена още през 80-те години. (С и турбо паскал). В края на 20 век същата борба се наблюдава между C ++ и Java.

цикли с параметър в c

Във виртуално пространство сред три дузиниИма три най-ярки двойки езици за програмиране, чието противопоставяне изуми най-големите умове на киберпространството: Algol-60 и Fortran, Pascal и C, Java и C ++. Разбира се, тези чувства са субективни, но по едно или друго време някой от двойката беше лидер. Това се дължи на изискванията на индустрията и необходимостта от определен софтуерен продукт. През 70-те. Fortran "управлява света", през 80-те - Turbo Pascal, през 90-те - C ++. Разбира се, никой от тях не е „умрял“. По-скоро те са се превърнали в усъвършенствани софтуерни продукти.

Когато изучавате езици за програмиране, ще забележите, че синтаксисът е сходен в някои теми. Така че циклите с параметър в C са подобни на подобни конструкции в Pascal, с изключение на някои точки.

Интересното е, че разработчиците на Turbo Pascal (OldLight) използва резултатите от разработките на американски учени, докато в Новия свят те активно използват резултатите от изследвания на европейски специалисти. В Европа разработчиците се застъпват повече за чистотата и компактността на програмните езици, а американските умове са по-склонни да използват новомодни тенденции при писането на код.