- •Лабораторна робота 13. Робота з множинними типами даних . . . 76 Лабораторна робота 14. Створення й обробка файлів . . . . . . . . . . 79
- •Порядок виконання лабораторних робіт
- •Типи даних
- •Оператор привласнювання
- •Оператори уводу-виводу
- •Завдання до лабораторної роботи
- •Умовний оператор
- •Завдання до лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 4 нестандартні й обмежені типи даних. Оператор варіанта
- •Нестандартні типи даних
- •Обмежені типи даних
- •Оператор вибору варіанта
- •Оператор циклу for
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 5 регулярні типи даних. Селективна обробка масивів
- •Регулярні типи даних
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 7 вкладені цикли. Обробка двовимірних масивів
- •Загальні вказівки
- •Завдання до лабораторної роботи
- •Лабораторна робота 8 процедури і функції
- •Процедури
- •Функції
- •Завдання до лабораторної роботи
- •Лабораторна робота 9 обробка символьних даних
- •Символьний тип даних
- •Завдання до лабораторної роботи
- •Лабораторна робота 10 обробка строкових даних
- •Строковий тип даних
- •Процедури
- •Функції
- •Завдання до лабораторної роботи
- •Лабораторна робота 11 комбіновані типи даних
- •Приклади виконання завдання лабораторної роботи
- •Завдання до лабораторної роботи
- •Лабораторна робота 12 файли і файлові типи даних
- •Файловий тип даних
- •Процедури обробки файлів
- •Завдання до лабораторної роботи
- •Лабораторна робота 13 робота з множинними типами даних
- •Завдання до лабораторної роботи
- •Лабораторна робота 14 створення й оброблення файлів
- •Файли з типом
- •Процедури для роботи з файлами з типом
- •Функції для обробки файлів з типом
- •Завдання до лабораторної роботи
- •Лабораторна робота 15 коректування файлів
- •Завдання до лабораторної роботи
- •Процедури роботи з екраном
- •Процедури установлення текстових режимів I управління кольором
- •Процедури управління курсором
- •Процедура установлення текстових вікон
- •Завдання до лабораторної роботи
- •Лабораторна робота 17 перевірка достовірності даних
- •Вибір критеріїв достовірності
- •Типові алгоритми уводу I перевірки достовірності даних
- •Завдання до лабораторної роботи
- •Лабораторна робота 18 графічні засоби мови паскаль
- •Графічні процедури мови Паскаль
- •Завдання до лабораторної роботи
- •Порядок виконання лабораторної роботи
- •Розрахунок масштабу I зрушення графіка
- •Процедура для креслення графіка
- •Завдання до лабораторної роботи
- •Порядок виконання роботи
- •Список рекомендованої літератури
- •Додаток а
Лабораторна робота 17 перевірка достовірності даних
Мета роботи: вивчити i відпрацювати на ПЕОМ типові алгоритми уводу i перевірки достовірності даних за заданим критерієм достовірності.
Вибір критеріїв достовірності
Перевірка на достовірність даних в САПР є обов'язковою умовою. Ії можна здійснити, якщо є відомості про вихідні дані. Чим більше відомо про можливі значення даних, тим успішніше можна виявити помилку уводу. Назвемо кілька типових критеріїв достовірності, позначивши параметр, який уводиться, через X:
- приналежність X діапазону значень: aXb;
- приналежність X безлічі допустимих значень a1,a2,...,aN;
- цілочисельність X;
- парність X, в загальному випадку - кратність числу К.
Критерій достовірності може бути сформульований як заперечення якого-небудь з перелічених властивостей.
Окрім перевірки коректності завдання одного параметра, може виникнути необхідність в перевірці групи параметрів за відомим співвідношенням між ними.
Типові алгоритми уводу I перевірки достовірності даних
Типовий алгоритм уводу i перевірки достовірності параметра X можна показати так:
1) увід X;
2) перевірка достовірності, якщо X знаходиться в межах достовірності, то іти на 5, інакше - на 3;
3) друк повідомлення про помилку уводу, пропонування повторно ввести X;
4) іти на 1;
5) уведений параметр правильний.
Приклад 40. Перевірити параметр X на належність діапазону значень X1 X X2.
Програма має вид:
PROGRAM PR40;
USES CRT;
LABEL 2;
VAR X,X1,X2:REAL; C:CHAR;
BEGIN CLRSCR;
TEXTCOLOR(15);
WRITE(' ВВЕДIТЬ X1, X2 => '); READLN(X1,X2);
2: TEXTCOLOR(14);
WRITE(' ВВЕДIТЬ ПАРАМЕТР X => '); READLN(X):
IF (X>=X1) AND (X<=X2) THEN
WRITELN(' ПАРАМЕТР X=',X:6:2,' ВВЕДЕHИЙ ПРАВИЛЬHО')
ELSE BEGIN
WRITELN('ЗНАЧЕННЯ X=',X:6:2,' НЕ ВХОДИТЬ ДО ДIАПА-ЗОНУ ВIД', X1:6:2,' ДО ',X2:6:2);
TEXTCOLOR(4);
WRITELN(' ПОВТОРIТЬ УВIД '); GOTO 2 END;
C:=READKEY
END.
Приклад 41. Перевірити параметр M на належність стандартному ряду: 10, 16, 25, 35, 50, 80.
Програма PR7 наведена нижче. Тут спочатку оголошується i заповнюється масив стандартних значень M1(6). Далі уведене значення M порівнюється з елементами масиву M1. Якщо не знайдеться жодного елемента, рівного M, тоді видається повідомлення про помилку i необхідно повторити увід.
PROGRAM PR41;
USES CRT;
LABEL 1;
TYPE MAS=ARRAY[1..6] OF INTEGER;
CONST M1:MAS=(10,16,25,35,50,80);
VAR I,M:INTEGER; C:CHAR;
BEGIN
TEXTBACKGROUND(1);
1: CLRSCR;
TEXTCOLOR(14); GOTOXY(20,5);
WRITE(' ВВЕДИ ПАРАМЕТР M => '); READLN(M);
FOR I:=1 TO 6 DO
IF M=M1[I] THEN
BEGIN GOTOXY(20,7);
WRITELN(' ПАРАМЕТР М=',M,' ВВЕДЕНИЙ ПРАВИЛЬНО') END
ELSE
BEGIN GOTOXY(20,9);TEXTCOLOR(5);
WRITELN(' ПАРАМЕТР М=',M,' НЕ СТАНДАРТНИЙ');
WRITELN(' ПОВТОРIТЬ УВIД');
C:=READKEY; GOTO 1 END;
C:=READKEY
END.
Можливі й інші типові елементи перевірки. Наприклад:
- умову цілочисельності параметра X можна задати в умовному операторі вираженням відношення ROUND(X)=X;
- умова парності X: X MOD 2=0;
- у загальному випадку умова кратності параметра X числу K: X MOD K=0.