Дійсний тип
Змінні дійсного типу можуть набувати значень з підмножини дійсних чисел. Сталі дійсного типу записують у програмі з десятковою крапкою і порядком. Можливі значення дійсних змінних мають дві характеристики - діапазон і точність, які й обмежують підмножину дійсних чисел, що їх опрацьовує комп'ютер. Діапазон обмежений максимальним порядком, а точність - максимальною кількістю десяткових цифр комп'ютера.
Стандартні типи дійсних чисел Турбо Паскалю наведені в табл. 2.2.
Усі операції з дійсними значеннями наближені, що пов'язане з обмеженнями подання чисел у комп'ютері.
Таблиця 2.2. Дійсний тип у Турбо Паскалі
Тип | Діапазон | Мантиса | Ємність пам'яті, байт |
real | 2.9E-39..1.7E38 | 11-12 | 6 |
single | 1.5E-45..3.4E38 | 7-8 | 4 |
double | 5.0E-324..1.7E308 | 15-16 | 8 |
extended | 3.4E-4932..1.7E4932 | 19-20 | 10 |
comp | -2E+63..+2E+63-1 |
| 8 |
Кожна операція з дійсними значеннями має похибку. Під час виконання великих програм похибка накопичується, і результат може бути спотворений. Щоб уникнути цього, треба вибирати добрі алгоритми, контролювати проміжні результати під час розв'язування задач на комп'ютері.
Дійсний результат, якщо хоча б один з операндів є дійсного типу (інший може бути цілого типу), дають такі операції: додавання, віднімання, множення, ділення. Під час ділення обидва операнди можуть бути цілі, а результат - дійсний. Якщо типи операндів змішані, то перед виконанням операції всі величини зводять до дійсного типу (це відбувається автоматично).
Як зазначено вище, значення виразу цілого типу можна присвоїти змінній дійсного типу (відбувається неявне перетворення цілий → дійсний). Однак результат дійсного типу не можна присвоїти змінній цілого типу.
Функції abs(r) і sqr(r) дають дійсний результат, якщо аргумент дійсний.
Функції sin, cos, arctan, exp, sqrt за будь-якого дійсного чи цілого аргументу дають дійсний результат.
Зазначимо, що у мові Паскаль немає деяких часто вживаних функцій, наприклад, піднесення до степеня, тангенса та ін. Такі функції треба подавати через інші, передбачені у Паскалі: аx→ exp(x*ln(a)), tg(x)→ sin(x)/cos(x) тощо.
Функції trunc і round використовують для перетворення дійсного значення в ціле.
У дійсних величин нема попереднього чи наступного числа, тому функції pred і succ з дійсними аргументами не виконують.
Якщо R - дійсна змінна, то оператор процедури read(R) вводить число із зовнішнього середовища і присвоює його значення змінній R.
Оператор процедури write(R:p:t) виконує виведення у такому вигляді:
dddd.ddd,
p - ширина поля (кількість усіх позицій, відведених під число), t- точність (кількість знаків після крапки). Якщо число не поміщається на визначеній ширині поля, то поле автоматично розширюється. Можна не зазначати t, тоді число буде виведене з рухомою крапкою: d.ddddEdd. Кількість цифр після крапки обмежена величиною р. Однак яке б не було p (навіть р=1), обов'язково будуть виведені (якщо нема t) знак числа, одна цифра до крапки, одна цифра після крапки, Е, знак порядку і цифри порядку. Для збільшення цифр після крапки треба збільшити р. Наприклад, оператор виведення виведе write(987.6:p)
якщо p = 1 - 9.9Е+02;
якщо р = 8 - 9.9Е+02;
якщо p = 9 - 9.88Е+02.
Під час виведення треба p і t вибирати так, щоб не виводити зайвих цифр, які не важливі для результату, або цифр, які визначені неточно. Ширину поля і точність доцільно позначати поіменованими сталими. Тоді, якщо треба змінити точність виведення по всій програмі, достатньо змінити тільки відповідні сталі у розділі визначення сталих.
- Інформація та інформаційні процеси Поняття інформації.
- Одиниці вимірювання інформації.
- Подання інформації та типи комп'ютерів.
- Способи пересилання інформації.
- Будова комп'ютера
- Пристрої введення-виведення інформації.
- Процесор
- Принципи функціонування комп'ютера Фізичні принципи
- Програмний принцип
- Поняття про середовища програмування
- Загальна характеристика мови паскаль
- Поняття інтегрованого середовища
- Команда New
- Команда Open
- Основи алгоритмізації Алгоритми та їх властивості
- Блок-схеми
- Загальна характеристика Паскаль-програми
- Структура Паскаль-програми
- Елементи мови Паскаль
- Прості типи даних
- Стандартні типи даних
- Дійсний тип
- Логічний тип
- Символьний тип
- Конструйовані типи
- Перелічуваний тип
- Оператори надання значень змінним Оператор присвоєння
- Уведення-виведення
- Порядок виконання операцій
- Складений оператор
- Стиль запису програми
- Структури керування
- Структура послідовного виконання
- Структура розгалуження
- Умовний оператор
- Оператор варіанта
- Оператор безумовного переходу
- Структура повторення
- Цикл з параметром
- Цикл з передумовою
- Цикл з післяумовою
- Ітераційні цикли
- Обчислення суми знакозмінного ряду із заданою точністю
- Процедури і функції
- Процедури з параметрами. Параметри-значення
- Одномірні масиви
- Поняття масиву. Одномірний масив та його опис в програмі
- Обчислення скалярного добутку двох векторів
- Знаходження найбільшого (найменшого) значень серед елементів масиву
- Обчислення суми та добутку елементів масиву
- Перетворення масиву по заданому закону
- Впорядкування одномірних масивів
- Впорядкування шляхом вибору
- Впорядкування обмінами
- Впорядкування вставками
- Зливання впорядкованих масивів
- Двомірні масиви Поняття двомірного масиву та його опис у програмі
- Ввід та вивід значень елементів двомірного масиву Ввід значень елементів двомірного масиву
- Вивід значень елементів двомірного масиву a[m,n]
- Рядковий тип (string)
- Комбіновані типи Організація комбінованих типів у Паскалі
- Оператор приєднання
- Множинні типи Організація множин
- Файлові типи Організація файлів
- Підготовчі та завершальні операції
- Операції уведення-виведення
- Стандартні файли input і output
- Модулі Модуль і його структура
- Стандартні модулі
- Наближене знаходження коренів рівнянь Дослідження рівняння. Відокремлення коренів
- Метод поділу проміжку пополам
- Метод хорд
- Метод дотичних
- Чисельне інтегрування
- Квадратурні формули прямокутників
- Загальні формули прямокутників
- Квадратурна формула трапецій
- Практичні оцінки точності квадратурних формул. Вибір кроку інтегрування
- Список літератури