Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Case <вираз>of

<список значень 1>:<команда 1>; …<список значень n>: <команда n>

else <команда n + 1> end;

 

Тут вираз – це проста зміна цілого, символьного, перерахованого або логічного типу; списки значень – сталі або діапазони, тип яких збігається з типом виразу. Якщо список значень складається з декількох елементів, то вони

перераховуються через кому. Складова частина else <команда n+1> може бути відсутня – тоді матимемо коротку форму команди case.

Якщо значення виразу збігається зі значенням з списку і, то виконується команда з номером і, а інші команди цієї конструкції не виконуються. Якщо значення виразу не збігається з жодним значенням з жодного списку, то виконується команда n+1 або у випадку короткої форми, наступна команда після команди case.

 

1.5. Цикли

Цикл – це процес певного набору команд деяку кількість разів. Цикл реалізують або за допомогою конструкції if-goto, або, що значно ефективніше, за допомогою команд циклу. Є три види команд циклів: з параметром, з передумовою та з післяумовою.

Команда циклу з параметром (for). Є два різновиди команди for. Розглянемо перший:

 

For <парамнтр>:=<вираз 1> to <вираз 2> do <команда1>;

 

Тут параметр – це змінна цілого, символьного, логічного або перерахованого типу, а вирази 1 і 2 задають початкове та кінцеве значення параметра.

Параметрові циклу присвоюється значення виразу 1. Якщо це значення менше-рівне, ніж значення виразу 2, то виконується команда 1. Після виконання команди 1 значення параметра автоматично збільшується на 1 і знову порівнюється

зі значенням виразу 2 і т.д. Коли значення параметра стане більшим, ніж значення виразу 2, то виконується наступна після циклу команда.

Розглянемо другий різновид циклу for:

 

For <параметр>:=<вираз 1> downto <вираз 2> do <команда 1>;

 

Ця команда діє як попередня, але крок зміни параметра є – 1. Значення параметра в середині циклу змінювати не можна.

Команда циклу з передумовою (while) має вигляд:

While <логічний вираз> do <команда 1>;

 

Доки значення логічного виразу істинне, виконується команда 1. Істинний логічний вираз описує умову впродовження процессу виконанн команди

циклу.

Команда циклу з післяумовою(repeat) має вигляд:

 

Repeat <команди> until <логічний вираз>;

 

Команди виконуються в циклі, доки значення логічного виразу не стане істинним. Істинний логічний вираз задає умову виходу з циклу.

 

1.6.Масиви

Масив (array) – це скінченний набір елементів одного (базового) типу, які зберігаються в послідовно розташованих комірках оперативної пам’яті і мають спільну назву.

У математиці поняттю масив відповідають поняття вектора та матриці. Розрізняють одно-, дво- та багатовимірні масиви. Двовимірний масив даних – це таблиця, що складається з декількох рядків. Кількість вимірів не обмежується, але сумарна довжина внутрішнього представлення елементів масиву повинна не перевищувати 65520 байт.

Опис одновимірного масиву

var <ім’я масиву>: array [<1..n >] of <тип елементів масиву>;

 

Ім’ям масиву може бути: велика чи мала латинська буква, буквосполучення або комбінація цифр та букв (першою стоїть буква).

Розмір (кількість елементів) масиву найчастіше задають у вигляді діапазону або назви деякого перерахованого типу даних. Описати масив можна у розділі опису типів type, у розділі констант const, або у розділі оголошення змінних var. Назви типів масивів і змінних-масивів придумує користувач.

Щоб опрацювати всі елементи масиву використовують команду циклу

For

(чи while або repeat).

Двовимірні масиви. Елементи двовимірного масиву (дані можуть бути подані у вигляді таблиці) визначаються іменем масиву та двома індексами: перший індекс означає номер рядка, а другий – номер стовпця, на перетині яких стоїть елемент, наприклад: p[1,2], p[i,j]. Опис двовимірного масиву:

Var <ім’я масиву>: array [1..n, 1..m] of <тип елементів масиву>;

 

Копіювання всього вмісту одного масиву в інший того ж типу виконується таким єдиним способом:

<ім’я масиву, в який копіюють>:=<ім’я масиву, з якого копіюють>;

 

1.7. Підпрограми

Підпрограмою називають іменовану, логічно-закінчену групу операторів, яку можна викликати для виконання будь-якої кількості разів з різних мість програми.

Підпрограми призначеня для реалізації алгоритмів опрацювання окремих частин деякої складної задачі. Вони дають змогу реалізувати концепцію структурного програмування, суть якого полягає в розкладанні складної задачі на послідовність простих підзадач і в складанні для алгоритмів розв’язування кожної підзадачі відповідних програм. Розрізняють два види підпрограм – підпрограми- процедури та підпрограми-функції. Підпрограми поділяються на стандартні та підпрограми користувача. Стандартні підпрограми створювати не потрібно – вони містяться у стандартних модулях System, Crt, Graph тощо. Підпрограма користувача це пойменованагрупа команд, яку створюють і описують в основній програмі в розділах procedure або function і до якої звертаються з будь-якого містя програми потрібну кількість разів.

Процедури (procedure). Загальний опис процедури:

Procedure <назва> (<список формальних параметрів>);

<розділи описів і оголошень процедури>;

begin <розділ команд процедури> end;

 

У списку формальних параметрів перераховують змінні разом із зазначенням їхніх типів. Розрізняють параметри-аргументи (інший термін: параметри-значення) вхідні дані для процедури, і параметри-результати (інший термін: параметри-змінні), через які можна повертати результати роботи процедури в основну програму. Перед списками параметрів-результатів кожного типу записують слово var. Зауважимо,що масиви фіксованих розмірів у списках формальних параметрів не можна описувати за допомогою слова array.

Розділи описів і оголошень у підпрограмах мають таку саму структуру як і в основній програмі.

До процедури звертаються з розділу команд основної програми або іншої підпрограми. Процедуру викликають за допомогою команди виклику:

<назва процедури> (<список фактичних параметрів>);

Параметри, які записують у команді виклику процедури, називаються фактичними. Фактичними параметрами-аргументами можуть бути сталі, змінні, вирази, а параметрами-результатами – лише змінні. Типи даних тут не зазначають.

Між фактичними і формальними параметрами має бути відповідність

за кількістю й типами. Відповідні фактичні і формальні парамери можуть мати різні імена.

Команда виклику функціонує так: значення фактичних параметрів присвоюються відповідним формильним параметрам процедури, виконується процедура, визначаються параметри-результати, значення яких надаються (повертаються) відповідним фактичним параметрам у команді виклику.

Змінні, описані в розділі описів основної програми, називаються глобальними. Вони діють у всіх підпрограмах, з яких складається програма. Змінні, описані в розділі описів конкретної процедури, називаються локальнами. Вони діють тільки в межах даної процедури.

Процедури можуть отримувати і повертати значення не тільки через параметри-результити, але й через глобальні змінні. Тому списків параметрів у процедурі може і не бути.

Функції (function). Функція, на відміну від процедури, може повертати в місце виклику лише один результат простого стандартного типу.

Загальний опис функції:

Function <назва> (<список формальних параметрів>):<тип функції>;

< розділи описів і оголошень функції >;

begin <розділ команд функції, де має бути така команда: назва:=вираз> end;

 

У розділі команд функції має бути команда присвоєння значення деякого виразу назві. Результат функції повертатися в основну програму через її назву (як і в випадку використання стандартних функцій, таких як sin, cos). Виклик функції здійснюється лише з виразів так:

<назва>(<список фактичних параметрів>).

 




Дата добавления: 2015-01-29; просмотров: 33 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.009 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав