Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка - Основи програмування і алгоритмічні мови.DOC
Скачиваний:
29
Добавлен:
02.05.2014
Размер:
512.11 Кб
Скачать

XyRec:Record

X,y:Integer;

End;

BEGIN

. . .

with XYRec do

begin

x:=0;

y:=10

end;

. . .

END.

Якщо у середині області дії оператора With використовуються інші змінні, які не мають відношення до запису, та їх імена співпадають з полями запису, необхідно до цих змінних приписати кваліфікатор (ім’я програми чи модуля, в яких вони об’явлені), наприклад:

Program Pro;

Var

X,y:Integer;

RecXY:Record x,y:Integer End;

BEGIN

x:=5;

y:=15;

with RecXY do

begin

x:=9.3*Pro.x;

y:=8.2*Pro.y;

end;

END.

Якщо одне із полів запису – запис з полями, то можна розповсюджувати With на декілька полів углиб, перерахувавши їх через кому:

With Ім’яЗапису, Поле_Запису Do

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

4.2 Завдання до роботи

Спільна умова до завдань 1–30.

Створити систему, що організовує базу даних із заданою структурою і надає наступний сервіс:

а) введення даних у базу;

б) редагування даних;

в) знищення даних;

г) перегляд усієї бази;

д) знищення бази;

є) додаткові послуги (відповідно до завдання).

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

1. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать; табельний номер (nnnnn).

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

2. Організувати базу даних для служби знайомств із таким змістом: ім'я, по батькові; дата народження (дд:мм:рррр); стать; ріст, вага; національність; річний прибуток.

Видати на екран інформацію про клієнтів служби, відсортовану за їх віком.

3. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище; ім'я; по батькові; стать.

Видати на екран поздоровлення з Міжнародним жіночим днем співробітниць цієї установи.

4. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать.

Видати на екран список чоловіків цієї установи.

5. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать; номер телефону.

Видати на екран список усіх однофамільців (примітка: Іванов і Іванова – однофамільці).

6. Організувати базу даних для дитячого саду з інформацією про дітей із таким змістом: прізвище, ім'я; дата народження (дд:мм:рррр); стать; група.

Для поздоровлення з Днем іменинника видати на екран список дітей за абеткою імен, але так, щоб діти з однаковим ім’ям перераховувалися групами (примітка: Олег і Ольга – однакові ім’я).

7. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать; номер телефону.

Видати на екран список співробітників з однаковим по батькові (примітка: Олександрович і Олександрівна – те ж).

8. Організувати базу даних для Міністерства внутрішніх справ з інформацією про жителів міста N-нска з таким змістом: прізвище, ім'я, по батькові; стать; домашня адреса.

Видати на екран список можливих родичів зазначеного підозрюваного. Список відсортувати за убуванням можливого ступеня кревності.

9. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать; річний прибуток; кількість дітей.

Видати на екран список співробітників, які народилися в зазначений час року.

10. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать; телефон.

Видати на екран список співробітників, які народилися в зазначений інтервал часу.

11. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище; ім'я; по батькові; дата народження (дд:мм:рррр); національність; табельний номер (nnnnn).

Видати на екран список співробітників, які народилися до зазначеного часу.

12. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище; ім'я, по батькові; дата народження (дд:мм:рррр); номер телефону.

Видати на екран список співробітників, які народилися після зазначеного часу.

13. Організувати базу даних з інформацією про співробітників установи з таким змістом: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); стать.

Видати на екран список із зазначеного числа співробітників, чий вік найближчий до середнього.

14. Організувати базу даних для спортивного клуба з такою інформацією про штангістів: прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); вага.

Видати на екран список спортсменів, відсортований по вагових категоріях (I – до 50кг; II – 51–60кг; III – 61–70кг; IV – 71–80кг; V – понад 80кг).

15. Організувати базу даних для телефонної служби з такою інформацією про абонентів: прізвище; ім'я; по батькові; адреса; телефон (n–nn–nn).

Видати на екран номер телефону зазначеного абонента.

16. Організувати базу даних для довідкової служби з такою інформацією: прізвище, ім'я, по батькові; адреса; телефон (n–nn–nn).

Видати на екран наявну інформацію про абонента, який має зазначений номер телефону.

17. Організувати базу даних для довідкової служби з такою інформацією: прізвище; ім'я; по батькові; адреса; телефон (n–nn–nn).

Видати на екран інформацію про особи з зазначеними ім'ям і вулицею.

18. Організувати базу даних для телефонної служби з такою інформацією про абонентів: прізвище; ім'я; по батькові; адреса; телефон (n–nn–nn).

Видати на екран номера телефонів абонентів із зазначеним прізвищем.

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

Видати на екран графік відправлення найближчих n електричок після зазначених часу і станції призначення.

20. Організувати базу даних для довідково-бібліографічного відділу бібліотеки, що містить таку інформацію: автор книги; назва книги; кількість зареєстрованих примірників.

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

База даних дозволяє видавати на екран інформацію про наявність квитків на зазначений рейс, а також змінювати цю інформацію.

22. Організувати базу даних для довідково-бібліографічного відділу бібліотеки, що містить таку інформацію: автор книги; назва книги; кількість зареєстрованих примірників; шифр пошуку книги в бібліотеці.

База даних дозволяє видавати на екран список знайдених по відомій назві/автору книг і надає можливість продовжити пошук із виведеного списку введенням автора/назви.

23. Організувати базу даних для податкової адміністрації району з такою інформацією: шифр платника податків; прізвище, ім'я, по батькові; річний прибуток.

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

24. Організувати базу даних для складу військового й інтендантського майна полку, що містить таку інформацію: найменування обмундирування (пілотки, взуття, білизна, пояси, шинелі, автомати і т.п.); кількість обмундирування.

Ввести кількість новобранців полку і вивести інформацію про стан складу і про можливі недостачі.

25. Організувати базу даних для урахування успішності студентів факультету, що містить таку інформацію: шифр групи; прізвище, ім'я, по батькові; номер контрольної роботи; успішність.

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

26. Організувати базу даних для бухгалтерії установи з таким змістом: табельний номер співробітника; прізвище, ім'я, по батькові; займана посада; інформація про помісячну зарплатню за півріччя.

База даних дозволяє видавати на екран інформацію про середній заробіток потрібного співробітника в зазначений період (місяця) часу.

27. Організувати базу даних для бібліотеки, що містить таку інформацію: шифр абонента; прізвище, ім'я, по батькові; перелік узятих книг; назви книг і їх авторів;

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

28. Організувати базу даних для поліклініки, що містить таку інформацію: шифр клієнта; прізвище, ім'я, по батькові; дата народження (дд:мм:рррр); адреса; дата останнього медогляду (дд:мм:рррр).

База даних дозволяє видавати на екран інформацію про осіб, що не пройшли своєчасно медогляд на даний момент часу, з урахуванням, що медогляд необхідно проходити не менше одного разу на рік.

29. Організувати базу даних для приймальної комісії вузу, що містить таку інформацію: шифр абітурієнта; прізвище, ім'я, по батькові; середній бал атестата; оцінка по мові; оцінка за фахом.

База даних дозволяє видавати на екран інформацію про особи, що зараховані до вузу за зазначеним прохідним балом.

30. Організувати базу даних для залізничного вокзалу з таким змістом: номер поїзда; час відправлення; пункти проходження (назви станцій);

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

31. Створити масив записів, структура якого:

Викладач

Студент

П.І.Б

Вчене звання

Заробіток

Тривалість контракту

П.І.Б

Стипендія

Середній бал

Визначити викладачів-доцентів, термін контракту яких закінчується хх.хх.хххх р. Вивести список студентів з мінімальною стипендією. Вилучити із списку студентiв з середнім балом, що менше 2,8.

32. Створити масив записiв, структура якого:

Кадровий працівник

Інженерно – технічний працівник

Допоміжний персонал

П.І.Б

Стать

Стаж

Освіта

Фах

Доступ до інформації

Професія

Розряд

Вивести список робітників-чоловіків, зарплата яких менше введеної з клавіатури, а стаж більше трьох років. Визначити кількість IТП за фахом, що заданий з клавiатури, рівень секретності – 1. Вилучити iз списку робітників з першим розрядом та неповною середньою освітою.

33. Створити масив записів, структура якого:

Бібліотечний каталог

Книги

Журнали

Газети

Автор

Назва

Рік

Автор

Назва

Рік

Стаття

Автор

Назва

Стаття

Дата

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

34. Створити масив записів, структура якого:

Спортивні спорудження

Стадіон

Басейн

Спортзал

Місто

Тип

Доріжка

Змагання

Місткість

Розмір

Види

змагань

Тип

Види змагань

1) Вивести список змагань у даному місті на стадіонах з трав’яним покриттям та місткістю до 50000. Визначити список міст з басейнами 50 м., в яких заплановані змагання з синхронного плавання. Визначити кількість спортзалів у даному мiстi.

35. Створити масив записів, структура якого:

Художній добуток

Проза

Поезія

Живопис

Автор

Назва

Жанр

Жанр

Віршовий розмір

Напрямок

Жанр

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

36. Створити масив записiв, структура якого:

Товари

Ціна

Стілець м’який

Стілець твердий

Стілець на колесах

Основа

Оббивка

Колір

Матеріал

Колір

Основа

Оббивка

Кількість коліс

Вивести кількість усіх стільців. Вивести список стiльцiв з оббивкою заданого кольору i вартістю від 5 до 20 грн. Вилучити із списку стільці з фанери.

37. Створити масив записiв, структура якого:

Викладач

Студент

П.І.Б

Вчений ступень

Кількість вчених робіт

Заробіток

Стипендія

Середній бал

Форма навчання

Визначити кiлькiсть викладачів з заробітком, що більше 250 грн. Визначити список студентів, що навчаються за денною формою. Вилучити з списку студентiв з середнім балом, що менше 2,3.

38. Створити масив записiв, структура якого:

Дім

Приватний

Багатоквартирний

Місцевість

Кількість кімнат

Кількість мешканців

Розмір ділянки

Кількість поверхів

Кількість квартир на поверху

Надвірні будови

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

39. Створити масив записів, структура якого:

Канцелярські товари

Дата постачання

Кількість

Ціна

Зошити

Папір

Олівці

Кількість аркушів

Формат

Формат

Якість

Колір

Твердість

Визначити сумарну вартість товару, що поставлений в зазначений термін. Визначити список зошитів з кількістю аркушiв вiд 12 до 96, що поставлені у термін від хх.хх.хххх р. до хх.хх.хххх р. Визначити список паперу першої якості.

40. Створити масив записiв, структура якого:

Вид забезпечення ПК

Технічне забезпечення ПК

Програмне забезпечення

Фірма

Ціна

Тип

процесора

RAM

Периферія

Операційна

система

Середовище

програміста

Утілити

Визначити список комп’ютерів, які постачаються заданою фірмою. Визначити сумарну вартість програмних продуктів, що постачаються заданою фірмою. Вилучити із списку записи про комп'ютери з мінімальною RAM.

41. Створити масив записів, структура якого:

Погода

Район

місцевості

Дата

Опади

Вітер

Температура

Кількість

Інтенсивність

Швидкість

Напрямок

Вдень

Вночі

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

42. Створити масив записiв, структура якого:

Вид транспорту

Район

місце-вості

Протя-жність

Пропускна

спроможність

Залізниця

Автомобільна

дорога

Авіатранспорт

Тип потягу

Тип колії

Вид

транспорту

Тип

покриття

Тип

літаків

Тип аеро-дрому

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

43. Створити масив записів, структура якого:

Викладач

Студент

Прізвище

Вчений ступень

Кількість

наук. робіт

Заробіток

Стипендія

Середній бал

Форма навчання

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

44. Створити масив записiв, структура якого:

Робітник підприємства

Посада

Прізвище

Стаж

Освіта

Оклад

Фахівець

Бакалавр

Фах

Відділ

Вид

роботи

професія

Визначити усіх спеціалістів з окладом більше заданого. Вивести прiзвище бакалаврів зі стажем, не менше, ніж 2 роки за професійним спрямуванням "комп’ютерні науки". Вилучити із списку спецiалiстiв зi стажем, меншим, нiж 1 рік.

45. Створити масив записів, структура якого:

Учбовий заклад

Ліцей

ВУЗ державний

ВУЗ приватний

Наз- ва

Кількість учнів

Міс-то

Учбов. напря-мок

Мето-дика викла-дання

Кількість

факультетів

Рівень акреди-тації

Оплата навчання

Ліцензія

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

46. Створити масив записів, структура якого:

Товари

Дата

Ціна

Кіль-кість

Комп’ютери

Принтери

Монітори

586

Pentium

Pentium II

Матр.

Стру-йні

Лазер.

14”

15”

17”

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

47. Створити масив записiв, структура якого:

Вистава

Дата

Назва театру

Кількість глядачів

Ціна

Драматичний

театр

Оперний

театр

Естрада

Комедія

Трагедія

Балет

Опера

Рок група

Сольний концерт

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

48. Створити масив записів, структура якого:

Каталог

Книги

Журнали

Газети

Автор

Назва

Рік

Автор

Назва статті

Назва журн.

Рік

Дата

Автор статті

Назва статті

Назва газети

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

49. Створити масив записiв, структура якого:

Товари

Дата

Фірма

Ціна

Кількість

Музичні інструменти

Косметика

Струнні

Духові

Клавішні

Парфуми

Шампунь

Визначити сумарну вартiсть товарів, які постачаються заданою фірмою. Вивести список фірм, які постачають вказану косметику. Впорядкувати записи про музичні інструменти за датою надходження.

50. Створити масив записiв, структура якого:

Навчальна програма

Факультет

Курс

Прізвище

Програмування

Математика

студента

Pascal

C

Basic

Вища

Прикладна

Мат. аналіз

Визначити факультет, на якому викладається Pascal на 1-му курсі. Визначити кількість студентів 1-го курсу, що слухають дисципліну Мат.аналiз. Вивести список студентiв заданого факультету, що вивчають задану дисциплiну.

51. Створити масив записів, структура якого:

Посада

Дисци-пліна

Оклад

Професор

Доцент

Асистент

Аспіранти

Кількість лекц.

годин

Кількість лекц.

годин

Кількість практ.

годин

Кількість практ.

годин

Виробнича практика

Визначити дисципліни з найбільшим лекційним навантаженням, де викладають професори. Вивести список викладачів і їх посадових окладів з урахуванням, що оклад нараховується за 960 годин. Якщо є перевантаження викладача, то нараховується надбавка (0,1% посадового окладу за годину перевантаження). Визначити, чи викладається задана дисципліна i яка кiлькiсть годин призначена їй по різних видах занять.

52. Створити масив записiв, структура якого:

Викладач

Студент

Прізвище

Вчене звання

Вчений ступінь

Оклад

Прізвище

Група

Стипендія

Визначити список викладачiв з вченими ступенями, заробіток яких не менше заданого. Впорядкувати список студентiв за алфавітом. Визначити студентiв, що не отримають стипендію.

53. Створити масив записiв, структура якого:

Прогноз погоди

Місцевість

Дата

Температура

Вітер

Опади

Вдень

Вночі

Швидкість

Напрямок

Дощ

Сніг

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

54. Створити масив записiв, структура якого:

Будинок

Адреса

Приватний будинок

Багатоквартирний будинок

Кількість мешканців

Кількість кімнат

Розмір ділянки

Кількість квартир

Кількість поверхів

Кількість мешканців

Визначити кількість мешканців у багатоповерховому будинку за заданою адресою. Вилучити із списку записи про приватні будинки з заданою кількістю мешканцiв. Вивести список приватних будинків з ділянкою 1 га.

55. Створити масив записів, структура якого:

Каталог

Книги

Журнали

Газети

Автор

Назва

Рік

Назва

Рік

Автор

Стаття

Автор

Назва

Стаття

Дата

Вивести список авторів, які друкувалися у заданiй газеті в заданий час. Визначити кiлькiсть книг автора з заданим прізвищем. Вилучити iз списку журнали заданої назви.

56. Створити масив записiв, структура якого:

Абонент

Прізвище

Адреса

Комунальні послуги

Квартирна плата

Сума оплати

Сума субсидії

Борг

Сума оплати

Борг

Період

неплатежів

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

57. Створити масив записiв, структура якого:

Лікарські препарати

Назва

Ціна

Хімічні препарати

Натуральні препарати

Хвороба

Побічні явища

% ускладнень

Хвороба

% успіху

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

58. Створити масив записів, структура якого:

Будинок

Адреса

Приватний будинок

Багатоквартирний будинок

Кількість мешканців

Кількість кімнат

Розмір ділянки

Кількість квартир

Кількість поверхів

Кількість мешканців

Визначити кiлькiсть будинків з заданою кількістю кімнат. Відсортувати список за кiлькiстю мешканцiв у будинку. Вилучити зі списку будинок за заданою адресою.

59. Створити масив записiв, структура якого:

Товари

Дата

Ціна

Кіль-кість

Комп’ютери

Дисководи

Монітори

286

386

486

586

3,5”

5,25”

EGA

VGA

SVGA

Визначити інформацію про комп’ютери класу 586, придбаних за заданий термін. Вилучити із списку комп’ютери з моніторами EGA. Визначити дисковод за найменшою ціною.

60. Створити масив записів, структура якого:

Каталог

Книги

Журнали

Газети

Автор

Назва

Рік

Автор

Назва статті

Назва журн.

Рік

Дата

Автор статті

Назва статті

Назва газети

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