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

Оператори Object Pascal

Читайте также:
  1. Component Pascal
  2. Exercise 4. Rewrite sentences using Complex Object
  3. Goals and objectives
  4. Goals and objectives of the monetary policy
  5. II. Translate the following borrowings into English and group them by the categories (flora, fauna, objects)
  6. Objects made in the United States (2) 1640 and 1840.
  7. Status praesens objectivus.
  8. The object and function of Political Science
  9. The Objective Infinitive Construction. Объектный инфинитивный оборот.
  10. XVI. Write out of the text sentences with Complex Object
  11. Тема: «Оператори циклу»

Прості типи даних

До простих типів даних належать дійсні типи, тип дата-час і порядкові типи. Порядкові – це дані знання, які вони можуть приймати можна перерахувати. Наприклад, символьні дані можуть приймати 256 різних значень, логічні 2 значення true або false і. т. п. До порядкових відносяться: цілі, логічні, символьні, дані що перераховуються та діапазонні дані.

Цілі дані подаються цілими числами зі знаком і без знаку. В залежності від діапазону значень цілі дані можуть бути таких типів Табл..2.1.

Логічні дані набувають двох значень: true (істинно), false (хибно) і можуть бути таких типів Табл..2.2.

 

Табл..2.1.

Тип даних Діапазон Формат (байтів)
Byte 0.. 255  
Word 0..65535  
Longword 0.. 4294967 295  
Shortint -128..+127  
Smallint -32768.. +32767  
Integer -2147453648.. +2147453647  
Longint -2147453648.. +2147453647  
Int64 -9*  

 

Табл..2.2.

Тип даних Діапазон Формат (байтів)
Boolean False (0), True (1)  
Bytebool False (0), True ()  
Bool False (0), True ()  
Wordbool False (0), True ()  
Longbool False (0), True ()  

 

Символьні дані можуть бути типу Char (однобайтові символи коду Ansi) і типу WideChar (двобайтові символи коду Unicode) Табл..2.3.

 

 

Табл..2.3.

Тип даних Діапазон Формат (байтів)
Char Код Ansi  
Widechar Код Unicode  

 

Дані, що перераховуються. Задаються перерахуванням у круглих дужках всіх значень, яких вони можуть набувати. Наприклад,

Var A: (B..F, X, Y, Z);

 

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

<мінімальне значення >.. <максимальне значення >.

Тип-діапазон успадковує всі властивості свого базового типу. Наприклад,

Var A: 1..100;

 

Дійсні дані представляються в експоненціальній формі

 

S E M

 

тут S – знак числа, E – порядок, M – мантиса числа. В залежності від формату представлення дійсні дані можуть бути таких типів Табл..2.4.

 

Табл..2.4.

Тип даних Діапазон Формат (байтів) Мантиса (знаки)
Real 5.0Е-324.. 1.7Е+308   15 – 16
Real48 2.9E-39.. 1.7E+38   11 – 12
Single 1.5Е-45.. 3.4Е+38   7 – 8
Double 5.0Е-324.. 1.7Е+308   15 – 16
Extended 3.4Е-4931.. 1.1Е+4932   19 – 20
Comp   19 – 20
Currency (грошеві) 922337203685477.5808.. 922337203685477.5807   19 – 20

 

Тип дата-час визначається ідентифікатором типу TDateTime і призначений для зберігання дати і часу. У внутрішньому (машинному) представленні займає 8 байтів.

Операції і вирази

Операції визначають дії за допомогою яких здійснюється обробка інформації комп’ютером. Послідовність дій визначається за допомогою виразу.. Вираз – це форма запису, що вказує, які потрібно взяти операнди і які виконати над ними операції, щоб обчислити значення виразу.

За кількістю операндів розрізняють унарні і бінарні операції. Унарні операції мають один операнд, а бінарні два. Більшість операцій є бінарними.

По характеру виконуваних дій операції можна розділити на такі групи:

· Арифметичні операції: +, -, *, /, div, mod. Операції +, - можуть унарними. Тип операндів може бути дійсним або цілим, результат буде дійсним або цілим. Результат операції / (ділення) цілих або дійсних даних буде тільки дійсним. Операнди в операціях div (ціла частина від ділення, наприклад, 5 div 2 =2) і mod (остача від ділення, наприклад, 5 mod 2 = 1) тільки цілі і результат буде цілим.

· Операції відношення: =, <>, >, <, >=, <=. Тип операндів з цими операціями повинен бути сумісним це прості типи, символьні рядки, а в операціях =, <> і вказівний тип. Результат операцій відношення бульвого типу false або true.

· Бульові операції: not – заперечення, and – кон’юнкція (логічне множення), or – диз’юнкція (логічне додавання), xor – додавання за модулем два. Операція not є унарною. Бульові операції виконуються за правилами бульової алгебри Табл..2.5. Операнди з бульовими операціями повинні бути бульового типу і результат також буде бульового типу.

  • Порозрядні логічні операції і зсуви not, and, or, xor, shl, shr. Операнди з порозрядними логічними операціями і зсувами тільки цілого типу. Порозрядні логічні операції виконуються над кожним розрядом за правилами бульової алгебри. Операція А shl В приводить до зсуву числа А на В розрядів вліво, а А shr В відповідно на В розрядів вправо. Результат порозрядних логічних операцій і зсувів є цілого типу.

Табл..2.5.

Операнди Операції
A B Not A A and B A or B A xor B
false False True False false false
false True True False true true
true False False False true true
true True False True true false

 

  • Операція конкатенація +. Операндами з операцією конкатенація є дані символьного типу або символьні рядки. Результатом цієї операції є символьний рядок.
  • Операції над множинами: + – об’єднання множин, - – різниця множин, * – переріз множин, = – еквівалентність множин, <> – не еквівалентність множин, >= – перевірка входження однієї множини в іншу, <= – перевірка входження однієї множини в іншу, in – перевірка належності елемента множині. Результатом операцій +, -, * є множина, а операцій =, <>, >=, <= значення бульового типу true або false.
  • Унарна операція @ взяття адреси. Операндом цієї операції може бути ідентифікатор змінної, процедури, функції, або методу. Тип результату вказівник сумісний з NIL.

На основі операцій і операндів будуються вирази. За характером дій і операндів вирази поділяються на арифметичні, логічні, символьні і вирази над множинами. Операндами у виразах можуть використовуватися сталі, змінні і функції (наведені у додатку) різних типів, для яких дозволені певні операції.

Вирази обчислюються зліва направо з врахуванням пріоритетів операцій, порядком розміщення операцій і дужок.

Серед операцій встановлено такий пріоритет:

· звернення до функцій;

· унарні +, -, not, @;

· мультиплікативні *, /, div, mod, and, shl, shr;

· адитивні +, -, or, xor;

· відношення =, <>, <, >, <=, >=, in.

Приклад 2.1. Визначити порядок виконання дій у виразі

 

,

 

1. ,

2. sin(x),

3. 5* sin(x),

4. +5* sin(x),

5. 6*x,sqr(x),

6. (6*x+sqr(x)),

7. 7*(6*x+sqr(x)),

8. +5* sin(x)- 7*(6*x+sqr(x)),

9. +5* sin(x)- 7*(6*x+sqr(x))-5.

 

Оператори Object Pascal

 

Оператори призначені для опису дій, які будуть виконуватися при реалізації алгоритму задачі, що розв’язується.

Оператори відділяються один від одного символом ‘; ‘.

Символ ‘; ‘ не є частиною оператора – це розділювач операторів, тому перед ключовим словом end ‘; ‘ не обов’язкова. Якщо ‘; ‘ поставлена, то вважається, що після цього оператора слідує порожній оператор і це не є помилкою. Будь-якому оператору в програмі може передувати мітка, яка відділяється від нього двокрапкою.

Розрізняють прості і структуровані оператори. Прості оператори це оператори, які не містять у собі інших операторів (присвоєння, goto, оператори звернення до процедур і функцій), а структуровані це оператори, які містять у собі інші оператори (складений, if, case, while, repeat, for, with).

Прості оператори

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

<змінна>:=<вираз>,

 

при виконанні цього оператора обчислюється значення виразу і

присвоюється змінній. Допускається присвоєння значення скалярним змінним, структурованим змінним та імені функції крім змінних файлового типу.

Змінна і значення виразу повинні бути сумісними за присвоєнням:

· змінна і значення виразу одного типу;

· змінна дійсного типу, а значення виразу може бути як дійсного так і цілого типу;

· змінна і значення виразу відносяться до одного або різних діапазонів і значення виразу лежить всередині діапазону визначеного типом змінної;

· змінна відносяться до типу символьний рядок, а вираз типу символьний рядок або до символьного типу.

Наприклад, при х=3 після виконання оператора присвоєння ; змінна х буде дорівнювати 8.

Оператор безумовного переходу має вигляд

 

goto <мітка>;

 

і передає керування на оператор з вказаною міткою.

Наприклад,

a:=x+2;

goto 5;

…….

5: b:=sqr(x);

 

Після виконання оператора goto 5 буде виконуватись оператор b:=sqr(x). Оператор goto у структурованих програмах як правило не використовується.

Оператори процедури і функції. Ці оператори використовуються для звернення до процедур і функцій і мають такий вигляд

 

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

 

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

 

Виконання цих операторів приводить до активізації дій описаних у процедурі або функції. Фактичні параметри повинні відповідати формальним параметрам по типу, кількості і порядку слідування. Перед активізацією тіла процедури або функції відбувається передача фактичних параметрів формальним параметрам. Результат виконання процедури або функції повертається через параметри.

 


Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.009 сек.)