Смекни!
smekni.com

Програмування в середовищі Pascal (стр. 15 из 16)

Примітки:

1Якщо в таблиці 10 сказано "заданий" (задане місто, задана група і т.д.), значення такого даного необхідно визначити в процесі виконання програми, тобто організувати введення такого значення з клавіатури. 2У задачах, де йдеться про вік, необхідно обчислити вік як різницю між заданою датою (роком) і роком народження

Таблиця 13 - Варіанти завдання

Варіант завдання Варіант структури файла Зміст завдання
1 1 Список неуспішних (мають двійки) студентів заданої групи
2 5 Список співробітників пенсійного віку (чоловіки старше 60, жінки – 55 років)
3 6 Список іногородніх пацієнтів (які проживають за межами м. Краматорська) старших 60 років
4 3 Список студентів, що проживають не там, де народилися (що змінили місце проживання)
5 2

Список студентів, у яких батько або мати підприємці (в полі "місце роботи" вказано

"підприємець")

6 4 Наявність в бібліотеці книг, заданого автора
7 1 Список студентів заданої групи, у яких немає двійок
8 2 Список студентів заданої групи, у яких батько і мати працюють в одному і тому ж місці

Продовження табл.13

Варіант завдання Варіант структури файла Зміст завдання
9 4 Список книг, виданих раніше заданого року
10 3 Список студентів заданої групи з багатодітних сімей (які мають більше двох братів і сестер)
11 7 Список рейсів в задане місто, на які є які-небудь квитки
12 6 Список пацієнтів, що проживають там, де народилися
13 5 Список співробітників заданого відділу, які поступили на підприємство після 1996 р.
14 1 Список студентів із заданого міста, у яких немає двійок
15 7 Список всіх рейсів з часом відправлення з 20.00 до 8.00
16 3 Список студентів м. Краматорська, у яких немає братів і сестер
17 4

Список книг заданого автора, що мають більше

300 сторінок

18 5 Список співробітників відділу ВЦ, що пропрацювали в установі більше 6 років
19 6 Список пацієнтів старше 40 років, що мають заданий діагноз
20 2 Список студентів, що проживають не в м. Краматорську, але хоча б один батько яких працює на ЗАТ НКМЗ
21 7 Список всіх рейсів в задане місто, що відправляються після 18.00 до 8.00
22 5 Список співробітників відділу Маркетингу, молодше 25 років
23 1 Список студентів груп, шифр (найменування) яких починається з символів ЕСА

Продовження табл.13

Варіант завдання Варіант структури файла Зміст завдання
24 4 Інформацію про місцезнаходження книги, що вимагається (задається прізвище автора і найменування книги)
25 3 Список студентів заданої групи, які проживають там, де народилися
26 7 Список всіх рейсів, на які є квитки першого класу
27 6 Список чоловіків, молодше 40 літ, що мають заданий діагноз
28 5 Список співробітників, посада яких починається з символів "нач" або "рук"
29 1 Список студентів заданої групи, що не здали іноземну мову
30 7 Список рейсів, на які продані всі квитки

Таблиця 14 - Варіанти структури файла

Варіант структури Структура файла
1 1) Прізвище студента; 2) Найменування групи; 3) Місце проживання; 4) Оцінка: з фізики, математики, іноземної мови, програмування
2 1) Прізвище студента; 2) Найменування групи; 3) Місто, де він живе; 4) Вулиця, де він живе; 5) Місце роботи батьків: батька, матері
3 1) Прізвище студента; 2) Найменування групи; 3) Місце проживання; 4) Місце народження; 5) Кількість братів і сестер
4

1) Номер книги (код, шифр); 2) Прізвище автора; 3)

Найменування книги; 4) Рік видання; 5) Кількість сторінок; місце знаходження

5 1) Прізвище співробітника; 2) Назва відділу; 3) Посада; 4) Рік
народження; 5) Дата вступу в підприємство; 6) Стать (м – чоловіча, ж – жіноча)
6 1) Прізвище пацієнта; 2) Місце народження; 3) Рік народження; 4) Місце народження; 5) Діагноз; 6) Стать (м – чоловіча, ж – жіноча)
7 1) Номер рейса літака; 2) Пункт призначення; 3) Час відправлення; 4) Наявність квитків 1 класу; 5) Наявність квитків 2 класу

9 ЛАБОРАТОРНА РОБОТА 6. ЕЛЕМЕНТИ ГРАФІКИ

9.1 Теоретичні відомості

До теперішнього часу ми використовували екран ЕОМ в текстовому режимі. Для зображення на екрані рисунків, креслень, графіків функцій і т.д. необхідно перемкнути екран ЕОМ в графічний режим. У графічному режимі зображення на екрані складається з точок (pixel) залежно від монітора – чорно-білих або кольорових, по горизонталі 320 або 640 точок, а по вертикалі - 200 або 480. Можлива й інша кількість точок (1024 і більш).

Для ідентифікації точок на екрані в графічному режимі використовується система ЕКРАННИХ (ФІЗИЧНИХ) координат, початок якої розташований у верхньому лівому кутку, а вісь У направлена вниз. Фізично координати вимірюються в цілих числах від нуля до максимальних значень, які однозначно обумовлюються номером графічного режиму. Ці значення можна отримати за допомогою функцій GetMaxX і GetMaxY

Геометричні побудови можуть проводитися як на всій робочій ділянці екрану, так і на будь-якій прямокутній ділянці меншого розміру, яка називається ГРАФІЧНИМ ВІКНОМ. Вікно визначається оператором

SetViewPort .

Геометричні побудови виконуються в кольорі. Як і в текстовому режимі, розрізняються колір фону і колір переднього плану – колір малювання. Коди кольорів такі ж, як і в текстовому режимі (див. стандартний модуль CRT).

Засоби роботи в графічному режимі зосереджені в стандартному модулі graph.tpu, який має бути підключеним до програми за допомогою оператора

USES GRAPH;

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

Розглянемо деякі процедури.

1 Включення графічного режиму (звичайно екран знаходиться в текстовому режимі):

Gd=0

InitGraph (Gd,Gm,'')

Здійснюється перевірка устаткування і автоматично вибирається самий відповідний драйвер і режим. Можна примусово задати номер драйвера (Gd > 0) і режим (Gm). Проте в цьому випадку потрібне знання технічних і програмних засобів.

2 Відключення графічного режиму і перехід в текстовий:

CloseGraph

3 Визначення кольору фону:

SetBkColor(Color)

4 Визначення кольору переднього плану:

SetColor(Color)

5 Визначення товщини (t=1,3) і форми (f=0,1,2,3) лінії:

SetLineStyle(t,0,f)

6 Визначення орнаменту (0 <= Pat <= 11) і кольору заповнення фігур: SetFillStyle(Pat,Color)

7 Виведення (побудова) окремої точки з координатами (x,y) заданого кольору:

PutPixel(x,y,Color)

8 Побудова лінії, що сполучає: a) точки (x1,y1) і (x2,y2):

Line(x1,y1,x2,y2)

b) поточну точку і точку (x,y):

LineTo(x,y)

c) поточну точку (x1,y1) і точку (x1+dx,y1+dy):

LineRel(dx,dy)

9 Побудова кола з центром в точці (x,y) і радіусу r:

Circle(x,y,r)

10 Побудова дуги кола з центром в точці (x,y), радіусу r і укладеній між радіус-векторами з кутами StAngle і EndAngle. Кути відлічуються проти

годинникової стрілки від напряму осі абсцис у градусах.

Arc(x,y,StAngle,EndAngle,r)

11 Побудова дуги еліпса з напівосями Xred і Yred. Решта параметрів – як в попередній процедурі.

Ellipse(x,y,StAngle,EndAngle,Xrad,Yrad)

12 Побудова заповненого заданим орнаментом еліпса:

FillEllipse(x,y,Xrad,Yrad)

13 Побудова заповненого заданим орнаментом сектора еліпса:

Sector(x,y,StAngle,EndAngle,Xrad,Yrad)

14 Побудова заповненого заданим орнаментом сектора круга:

PieSlice(x,y,StAngle,EndAngle,r)

15 Побудова прямокутника з протилежними вершинами (x1,y1) і

(x2,y2):

a) не заповненого:

Rectangle(x1,y1,x2,y2)

b) заповненого: Bar(x1,y1,x2,y2)

Будь-який графічний режим разом з відтворенням геометричних об'єктів дозволяє виводити і текстову інформацію. 16 Виведення на екран послідовності символів: a) щодо поточної точки:

OutText(Text)

b) щодо точки (x,y): OutTextXY(x,y,Text)

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

STR(<змінна>:<шаблон>,<stroka>)

Зате можна міняти шрифт, напрям тексту і т.д.:

SetTextJustify(Horiz,Vert)

SetTextStyle(Font,Direction,Size)

9.2 Приклади побудови графічних зображень

Програмні (МАТЕМАТИЧНІ) або СВІТОВІ координати точок, що задають контури зображення, можуть не співпадати за своїми межами з фізичними межами графічного вікна. Приведення МАТЕМАТИЧНИХ (СВІТОВИХ) координат до ФІЗИЧНИХ повинне здійснюватися програмою користувача. У мові немає вбудованих засобів перетворення. Для заповнення цих пропусків розробимо декілька стандартних програм.

Хай Xmin, Xmax, Ymin, Ymax – межі зміни математичних координат.

А межі зміни екранних можна визначити так: 0,GetMaxX,0,GetMaxY.