"Tипи даних"
Завантажити презентаціюПрезентація по слайдам:
Цілий тип мова Delphi підтримує сім цілих типів даних: shortint, smailint, Longint, Int64, Byte, word и Longword. Object Pascal підтримує і найбільш універсальний цілий тип - Integer, який еквівалентний Longint. Тип Диапазон Формат Shortint -128…127 8 бітів Smallint -32 768 … 32 767 16 бітів Longint -2 147 483 648 … 2 147 483 647 32 біта Int64 -263 … 263 - 1 64 біта Byte 0 … 255 8 бітів, беззнаковий Word 0 … 65 535 16 бітів, беззнаковий Longword 0 … 4 294 967 295 32 біта, беззнаковий
Речовий тип Мова Delphi підтримує шість дійсних типів: Real48, Single, Double, Extended, Comp, Currency. Мова Delphi підтримує і найбільш універсальний речовий тип - Real, який еквівалентен Тип Диапазон Значащих цифр Байтов Real48 2.9x 10-39-1.7x1038 11-12 06 Single 1.5 x 10-45-3.4х 1038 7-8 04 Double 5.0x10-324 -1.7x10308 15-16 08 Extended 3.6x10-4951 -1.1 х104932 19-20 10 Comp 263+1 - 263-1 19-20 08 Currency -922 337 203 685 477.5808 …922 337 203 685 477.5807 19-20 08
символьний тип Мова Delphi підтримує два символьних типу: Ansichar і Widechar: Тип Ansichar — це символи в кодуванні ANSI, яким відповідають числа в діапазоні від 0 до 255; тип widechar — це символи в кодуванні Unicode, їм відповідають числа від 0 до 65 535. Object Pascal підтримує і найбільш універсальний символьний тип- Char, який еквівалентний Ansichar.
Строковий тип Мова Delphi підтримує три строкових типа: shortstring, Longstring WideString: тип shortstring являє собою статично розміщуються в пам'яті комп'ютера рядки довжиною від 0 до 255 символів; тип Longstring являє собою динамічно розміщуються в пам'яті рядки, довжина яких обмежена лише об'ємом вільної пам'яті; тип WideString являє собою динамічно розміщуються в пам'яті рядки, довжина яких обмежена лише об'ємом вільної пам'яті. Кожен символ рядка типа WideString являється Unicode-символом. У мові Delphi для позначення строкового типу допускається використання ідентифікатора string, який еквівалентний типу shortstring.
Логічний тип Логічна величина може приймати одне з двох значень True (істина) або False (брехня). У мові Delphi логічні величини відносять до типу Boolean..
Приклади запису дробових чисел Число алгебраїчна форма Форма з плаваючою точкою 1 000 000 -123.452 0.0056712 1х106 -1,23452x102 5,6712х10-3 1 .0000000000Е+06 -1 .2345200000Е+02 5 .6712000000Е-03
Строкові і символьні константи Строкові і символьні константи полягають в лапки. Нижче наведено приклади строкових констант: ‘Мова програмування Delphi’, 'Delphi 7' '2.4' 'Д' Тут слід звернути увагу на константу '2.4'. Це саме символьна константа, тобто рядок символів, яка зображує число "дві цілі чотири десятих", а не число 2,4.
Стандартні функції Для виконання часто зустрічаються обчислень і перетворень мову Delphi надає програмістові ряд стандартних функцій. Значення функції пов'язано з її ім'ям. Тому функцію можна використовувати як операнда вираження, наприклад в інструкції присвоєння. k: = Sqrt (n), де Sqrt - функція обчислення квадратного кореня, п - змінна, яка містить число, квадратний корінь якого треба вирахувати. Функція характеризується типом значення та типом параметрів. Тип змінної, якій присвоюється значення функції, повинен відповідати типу функції.
функції перетворення Функції перетворення найбільш часто використовуються в інструкціях, які забезпечують введення і виведення інформації. Наприклад, для того щоб вивести в поле виводу (компонент Label) діалогового вікна значення змінної типу real, необхідно перетворити число в рядок символів, що зображає дане число. Наприклад, команда Label1.caption: = FioatTostr (x) виводить значення змінної х у поле Label1.
Функції перетворення Функція Значення функції IntToStr (k) Ціле число k перетворює в рядок, що є зображенням цього числа k. FloatToStr (n) Дійсне число n перетворює в рядок, що є зображенням цього числа n. FloatToStrF (n, f, k, m) Дійсне число n перетворює в рядок f - формат (спосіб зображення); k - точність (потрібна загальна кількість цифр); m - кількість цифр після десяткової точки StrToInt (s) Отримує ціле число, зображенням якого є рядок s StrToFloat (s) Отримує дійсне число, зображенням якого є рядок s
Використання функцій Зазвичай функції використовують в якості операндів виразів. Параметром функції може бути константа, змінна або вираз відповідного типу. Приклади використання стандартних функцій і функцій перетворення: n: = Round ((x2-x1) / dx); x1: = (-b + Sqrt (d)) / (2 * а); m: = Random (10); cena: = StrToInt (Edit1.Text); Edit2.Text: = IntToStr (100); mes: = 'x1 =' + FloatToStr (x1);
Введення даних Найчастіше введення даних відбувається з 1. поля редагування (компонент Edit) 2. вікна введення.
Введення з поля редагування Поле редагування - це компонент Edit. Введення даних з поля редагування здійснюється зверненням до властивості Text Компонент Edit1 використовується для введення даних Компонент Edit1 використовується для введення вихідних даних. Команда введення даних в цьому випадку буде мати вигляд Funt := StrToFloat(Editl.Text); діалогове вікна програми перерахунку ваги з фунтів в кілограми
Введення з вікна введення Вікно введення - це стандартне діалогове вікно, яке з'являється на екрані в результаті виклику функції inputBox. Значення функції inputBox - рядок, який ввів користувач. Команда введення даних з використанням функції inputBox: Змінна: = InputBox (Заголовок, Підказка, Значення); де: Мінлива - мінлива строкового типу, значення якої має бути одержана від користувача; Заголовок - текст заголовка вікна введення; Підказка - текст поясняющего повідомлення; Значення - текст, який буде знаходитися в полі введення, коли вікно введення з'явиться на екрані.
Команди, яка отримує вихідні дані для програми перерахунку ваги з фунтів в кілограми: s:=InputBox('Фунти-кілограми','Введіть вагу в фунтах','0'); Вікно введення, відповідне цій команді Значення функції inputBox строкового (string) типу. Для отримання числової величини потрібно скористатися відповідною функції перетворення. наприклад: s:=InputBox('Фунти-кілограми1,'Введіть ввагус в фунтах',’0'); funt := StrToFloat(s);
Висновок результатів Програма може вивести результат своєї роботи в: 1.поле виводу (компонент Label), 2.поле редагування (компонент Edit), 3.вікно повідомлення.
Висновок в полі діалогового вікна Частина діалогового вікна, призначена для виведення інформації, називається полем виводу, або полем позначки. Поле виведення - це компонент Label. Вміст поля виводу визначається значенням властивості Caption. Змінити значення властивості Caption, як і більшості властивостей інших компонентів, можна як під час розробки форми програми, так і під час роботи програми. Для того щоб під час роботи програми змінити вміст поля виводу, наприклад, вивести в поле результат роботи програми, потрібно привласнити властивості нового значення.
Поле Label2 призначено для виведення результату роботи програми Властивість Caption символьного типу. Тому для того, щоб під час роботи програми вивести в поле Label числове значення, потрібно перетворити число в рядок, наприклад, за допомогою функції FloatToStr або IntToStr. наприклад: Label2.Caption:= FloatToStr(kg)+' кг'; Для компонента Edit діємо аналогічно: Edit1.Text:=FloatToStr(kg)+' кг'; Компонент Label1 забезпечує виведення інформаційного повідомлення,
Висновок у вікно повідомлення Вікна повідомлень використовуються для залучення уваги користувача. За допомогою вікна повідомлення програма може, приміром, проінформувати про помилку у вихідних даних або запитати підтвердження виконання незворотною операції, наприклад, видалення файлу. Вивести на екран вікно з повідомленням можна за допомогою процедури ShowMessage або функції MessageDlg.
Процедура ShowMessage виводить на екран вікно з текстом та командної кнопкою ОК. У загальному вигляді інструкція виклику процедури ShowMessage виглядає так: ShowMessage (Повідомлення); де повідомлення - текст, який буде виведений у вікні. ShowMessage('Введітт вагу в фунтах.'); У заголовку вікна повідомлення, що виводиться процедурою ShowMessage, зазначена назва програми
Функція MessageDlg більш універсальна. Вона дозволяє помістити у вікно з повідомленням один із стандартних значків, наприклад "Увага", задати кількість і тип командних кнопок і визначити, яку з кнопок натиснув користувач. r:=MessageDlg('Файл '+ FName + ' будет удален.', mtWarning, [mbOk,mbCancel] , 0) ; Вікно, виведене в результаті виконання команди:
Значення функції MessageDlg - число, перевіривши значення якого, можна визначити, яку кнопку натиснув користувач. Загальний вид звернення до функції MessageDlg: Вибір: = MessageDlg (Повідомлення, Тип, Кнопки, КонтекстСправкі) де: Повідомлення - текст повідомлення; Тип - тип повідомлення. Повідомлення може бути інформаційним, застережливим або повідомленням про критичну помилку. Кожному типу повідомлення відповідає певний значок. Тип повідомлення задається іменованою константою; Кнопки - список кнопок, відображуваних у вікні повідомлення. Список може складатися з кількох розділених комами іменованих констант. Весь список полягає у квадратні дужки
контекстСправки — параметр, що визначає розділ довідкової системи, який з'явиться на екрані, якщо користувач натисне клавішу.. Якщо висновок довідки не передбачений, то значення параметра КонтекстСправки повинно бути Дорівнюватиме нулю.
Константы типа сообщения функции MessageDlg Константа Тип повідомлення Значок mtWarning Увага mtError Помилка mt Information інформація mtConfirmation Підтвердження mtCustom Звичайне Без значка
Константи кнопок функції MessageDlg Наприклад, для того щоб з'явилися кнопки ОК і Cancel, список Кнопки повинен бути таким: [mbOK,mbCancel] Можна використовувати константи: mbokcancel, mbYesNoCancel и mbAbortRetryIgnore. Ці константи визначають найбільш часто використовувані в діалогових вікнах комбінації командних кнопок. Константа Кнопка Константа Кнопка mbYes Yes mb Abort Abort mbNo No mbRetry Retry mbOK OK mblgnore Ignore mbCancel Cancel mbAll All mbHelp Help
Значення функціїи MessageDlg Константи, є кодом натиснутою кнопки маютьтип integer! Значение функции MessageDig Диалог завершен нажатием кнопки mrAbort Abort mrYes Yes mrOk Ok mrRetry Retry mrNo No mrCancel Cancel mrIgnore Ignore mrAll All
приклад: Var otvet: integer; ... Otvet: = MessadeDlg ('Обчислити вартість проїзду туди і назад?', MtConfirmation, [mbYes, mbNo], 0); If otvet = mrYes then stoim: = stoim * 2;
Електронний підручник: глава 1 «Основи програмування» Глинский: Розділ 3. (2.) «Візуальне программування» §1-3.
Схожі презентації
Категорії