Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Та програмування

Та програмування




Сторінка1/11
Дата конвертації10.03.2017
Розмір2.35 Mb.
  1   2   3   4   5   6   7   8   9   10   11


С. М. Москвіна, Т. В. Грищук


КОМП’ЮТЕРНІ ТЕХНОЛОГІЇ ТА
ПРОГРАМУВАННЯ


ЕЛЕМЕНТИ ПРОФЕСІЙНОГО ПРОГРАМУВАННЯ

Міністерство освіти і науки України

Вінницький національний технічний університет


С. М.

Техноло́гія (від грец. τεχνολογια, що походить від грец. τεχνολογος; грец. τεχνη - майстерність, техніка; грец. λογος - (тут) передавати) - наука («корпус знань») про способи (набір і послідовність операцій, їх режими) забезпечення потреб людства за допомогою (шляхом застосування) технічних засобів (знарядь праці).
Профе́сія (фах) - відокремлений («окреслений») у рамках суспільного поділу праці комплекс дій та відповідних знань, що вимагає відповідної освіти.
Москвіна, Т. В. Грищук

КОМП’ЮТЕРНІ ТЕХНОЛОГІЇ



ТА ПРОГРАМУВАННЯ

ЕЛЕМЕНТИ ПРОФЕСІЙНОГО ПРОГРАМУВАННЯ
Навчальний посібник

Вінниця


ВНТУ

2014


У

ДК 681.3.06(075.8)


ББК

М
Рекомендовано до друку Вченою радою Вінницького національного технічного університету Міністерства освіти і науки України (протокол
№ 10 від 23.05.2013 р.
Націона́льність - приналежність особи до нації, держави або народу. Поняття «національність» може мати різноманітні значення: юридично-правове, політичне, етнологічне, культурологічне, повсякденно-побутове тощо.
Вíнницький націона́льний технічний університе́т - вищий навчальний заклад четвертого рівня акредитації.
)

Рецензенти:



В. М. Лисогор, доктор технічних наук, професор

В. А.
До́ктор нау́к - вищий науковий ступінь, який присуджують на підставі публічного захисту докторської дисертації.
Лужецький
, доктор технічних наук, професор

О. М.
Технічні науки - науки, що вивчають закономірності розвитку техніки і визначають способи найкращого її використання.
Ткаченко
, кандидат технічних наук, доцент
Москвіна, С. М.

М Комп’ютерні технології та програмування. Елементи професійного програмування : навчальний посібник / С. М.
Навчальний посібник - видання, яке частково доповнює або замінює підручник у викладі навчального матеріалу з певного предмета, курсу, дисципліни або окремого його розділу, офіційно затверджений як такий.
Москвіна, Т. В. Грищук – Вінниця : ВНТУ, 2014. – 195 с.

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

Матеріа́л - речовина, або суміш речовин, первинний предмет праці, який використовують для виготовлення виробу (основний матеріал), або які сприяють якимось діям. У останньому випадку уточнюють, що це допоміжний, чи витратний матеріал.
Пра́ця - цілеспрямована діяльність людей зі створення матеріальних і духовних благ, необхідних для задоволення потреб кожного індивіда і суспільства в цілому.
Студе́нт (лат. studens, родовий відмінок studentis - «ретельно працюючий», «такий, що займається») - учень вищого, у деяких країнах і середнього навчального закладу.
050202 - “Автоматизація та комп’ютерно-інтегровані технології”.


УДК 681.3.06(075.8)

ББК

 С. Москвіна,Т. Грищук 2014





ЗМІСТ
ПЕРЕДМОВА 5

1 ОСНОВНІ ПРИНЦИПИ РОБОТИ З ГРАФІКОЮ МОВОЮ ПРОГРАМУВАННЯ С 7

1.

Гра́фіка (нім. Graphik, грец. graphikos «написаний») - вид образотворчого мистецтва, для якого характерна перевага ліній і штрихів, використання контрастів білого і чорного та менше, ніж у живописі, використання кольору.
Принцип (лат. principium - начало, основа) - це твердження, яке сприймається як головне, важливе, суттєве, неодмінне або, принаймні, бажане. У повсякденному житті принципами називають внутрішні переконання людини, ті практичні, моральні та теоретичні засади, якими вона керується в житті, в різних сферах діяльності.
1 Загальні відомості 7

1.2 Функції рисування графічних примітивів 12

1.3 Встановлення кольорів ліній і фону 13

1.4 Керування стилем ліній, палітрою, штрихуванням 14

1.5 Ефекти мультиплікації 28

1.

Аніма́ція (з лат. anima - душа і похідного фр. animation - оживлення), мультипліка́ція (з лат. multiplicatio - розмноження, збільшення, зростання) - вид кіномистецтва, твори якого створюються шляхом зйомки послідовних фаз руху намальованих (графічна анімація) або об'ємних (об'ємна анімація) об'єктів.
6 Робота з фрагментами зображення 29

1.

Фрагмент (лат. fragmentum - уламок, шматок, скалка) - яка-небудь частина цілого.
7 Керування відеосторінками 34

1.8 Вибір шрифта і стиля 35

1.9 Контрольні запитання 36

1.10 Практикум з програмування 36

2 ОСОБЛИВОСТІ РОЗРОБКИ ГРАФІЧНИХ ЗАСТАВОК В ПРОФЕСІЙНИХ ПРОГРАМАХ 37

2.1 Загальні відомості 37

2.2 Особливості розробки статичної частини графічної заставки 38

2.3 Особливості розробки динамічної частини графічної заставки 42

2.4 Контрольні запитання 51

2.5 Практикум з програмування 51

3 ОСНОВНІ ПРИНЦИПИ СТВОРЕННЯ БАГАТОІЄРАРХІЧНОГО МЕНЮ МОВОЮ С 52

3.1 Загальні відомості 52

3.2 Способи створення робочого вікна 53

3.3 Алгоритм створення пунктів та підпунктів меню 56

3.

Алгори́тм (латинізов. Algorithmi за араб. ім'ям узб. математика аль-Хорезмі) - набір інструкцій, які описують порядок дій виконавця, щоб досягти результату розв'язання задачі за скінченну кількість дій; система правил виконання дискретного процесу, яка досягає поставленої мети за скінченний час.
4 Правила реалізації пунктів меню 60

3.

Про́даж - це оплатна передача майна однією особою у власність іншій особі.
5 Контрольні запитання 80

3.6 Практикум з програмування 80

4 ОСОБЛИВОСТІ ПОБУДОВИ ГРАФІКА ФУНКЦІЇ АЛГОРИТМІЧНОЮ МОВОЮ С 81

4.1 Загальні відомості 81

4.2 Ініціалізація графіки 84

4.3 Введення даних 85

4.4 Алгоритм побудови графіка табличної функції 87

4.5 Створення вікна таблиці для виведення даних 91

4.6 Контрольні запитання 96

4.7 Практикум з програмування 96

5 ОСНОВНІ ПРИНЦИПИ РОБОТИ З ПОТОКАМИ ДАНИХ 97

5.1 Загальні відомості 97

5.2 Читання і запис текстових файлів 97

5.

Те́кстовий файл - форма подання послідовності символів у комп'ютері, де кожен символ із задіяного набору символів кодується одним байтом чи послідовністю двох, трьох і т. д. байтів. На відміну від терміна «текстовий формат», що характеризує вміст даних, термін «текстовий файл» стосується файлу та характеризує його як контейнер, який зберігає такі дані.
3 Читання і запис двійкових файлів 100

5.4 Файли з послідовним доступом 101

5.5 Файли з довільним доступом 102

5.6 Передача файлів між комп’ютерами 104

5.7 Контрольні запитання 109

5.8 Практикум з програмування 110

6 ОСОБЛИВОСТІ РОБОТИ З ТЕКСТОВИМИ ДАНИМИ МОВОЮ С 111

6.1 Загальні відомості 111

6.2 Рядки та вказівники 115

6.3 Стандартні функції для роботи з рядками (бібліотека string.

Вказівник, іноді посилання та покажчик (англ. pointer або англ. reference) - тип даних в комп'ютерних мовах програмування. Значення вказівника посилається на інше значення, що записане будь-де в пам'яті комп'ютера (фактично містить його адресу).
Станда́рт - нормативний документ, заснований на консенсусі, прийнятий визнаним органом, що встановлює для загального і неодноразового використання правила, настанови або характеристики щодо діяльності чи її результатів, та спрямований на досягнення оптимального ступеня впорядкованості в певній сфері.
h) 117

6.4 Приклади використання стандартних функцій для роботи з
рядками 120

6.

Підпрограма (англ. subroutine) - частина програми, яка реалізує певний алгоритм і дозволяє звернення до неї з різних частин загальної (головної) програми. В термінах мов програмування: функції (С), процедури (Pascal), методи (в термінології об'єктно-орієнтованого програмування в мовах C++, Java, С# та ін.).
5 Функції для обробки текстової інформації 133

6.6 Контрольні запитання 140

6.7 Практикум з програмування 140

7 РОБОТА З БАЗАМИ ДАНИХ 141

7.1 Загальні відомості 141

7.2 Особливості розробки програм для роботи з базами даних 142

7.3 Приклад проектування бази даних 143

7.4 Контрольні запитання 162

7.5 Практикум з програмування 162

8 ОСОБЛИВОСТІ СТВОРЕННЯ ГРАФІЧНОГО МЕНЮ АЛГОРИТМІЧНОЮ МОВОЮ С 163

8.1 Загальні відомості 163

8.2 Створення кнопок 164

8.3 Створення графічного підменю 166

8.4 Створення діалогових вікон 170

8.5 Контрольні запитання 180

8.6 Практикум з програмування 181

СЛОВНИК ТЕРМІНІВ 182

СПИСОК ЛІТЕРАТУРИ 194
ПЕРЕДМОВА

Мова програмування С, елементи професійної роботи з якою покладені в основу даного навчального посібника, створена у 1972 році працівником фірми Bell Laboratories Денісом Рітчі (Dennis V. Ritchie) при розробці операційної системи UNIX.

Робітники́, також працівники́, трудівники́ - наймані особи, зайняті в безпосередньому виробництві, рідше у сфері послуг; виконавці найнижчої ланки технологічного чи управлінського ланцюга. В правовому суспільстві права й інтереси робітників захищено трудовим правом[Джерело?].
Лабораторія Белла (англ. Bell Laboratories, скорочено Bell Labs, колишні назви AT&T Bell Laboratories, Bell Telephone Laboratories) - в минулому американська корпорація, створена 1925 р. шляхом злиття та централізації науково-дослідних відділів компаній AT&T і Western Electric.
Операці́йна систе́ма, скорочено ОС (англ. operating system, OS) - це базовий комплекс програм, що виконує управління апаратною складовою комп'ютера або віртуальної машини; забезпечує керування обчислювальним процесом і організовує взаємодію з користувачем.
Мова проектувалася як робочий інструмент для системного програмування з орієнтацією на розробку добре структурованих програм. Вдале поєднання лаконічності конструкцій та багатство можливостей дозволило мові С швидко розповсюдитися та стати найбільш популярною мовою прикладного та системного програмування.
Можливість - це дія, що може відбутися або ні (можливо, приїду, а, можливо, і ні). Можливість можна забезпечити чи покладатись на «авось» та якось буде. Альтернатива дає шанс, але не гарантує без відповідних дій забезпечення результату і адекватності та конструктиву діяльності.
Орієнтація, в класичному випадку - вибір одного класу систем координат, пов'язаних між собою «додатньо» в деякому певному сенсі. Кожна система задає орієнтацію, визначаючи клас, до якого вона належить.
Багáтство (від - Бог) - походить від поняття «бог», має значення достатку, розкошів та надлишку цінностей, великої кількості чогось (багатоманітність); щось дуже значне, важливе і цінне. Використовується і замість терміну «скарб» (майнó), щодо матеріальної власності й фінансових ресурсів, вартості матеріальних і фінансових засобів (усі активи мінус пасиви), якими володіє нація, особа чи фірма у певний проміжок часу. Протилежне поняттю «бідність» (від - «біда»).
Так, компілятори мови С працюють майже на всіх типах сучасних ЕОМ в операційних системах UNIX, Linux, Mac OS, OS/2, Windows, Solaris тощо.
Компілятор (англ. Compiler від англ. to compile - збирати в ціле) - комп'ютерна програма (або набір к. програм), що перетворює (компілює) вихідний код, написаний певною мовою програмування (мова джерела, англ. source language)

Навчальний посібник призначений для студентів напряму підготовки 6.050202 – «Автоматизація та комп’ютерно-інтегровані технології», що вивчають дисципліну «Комп’ютерні технології та програмування» в другому та четвертому навчальному триместрах.

Для початку роботи з посібником студенти повинні знати:

- основи алгоритмізації і програмування задач;

- методи та алгоритми розв’язування типових задач на числах, масивах, матрицях;

- основи структурного програмування;

- синтаксис і семантику мови програмування С.

Сема́нтика мовна (давніше семасіологія) - розділ мовознавства, пов'язаний з лексикологією; вивчає значення (теж у діахронному, іст. перекрої) слів і їх складових частин, словосполук і фразеологізмів. Слово походить від грецького слова σημαντικός (семантікос), «значимий», з σημαίνω (семаіно), «значити, вказувати» та також від σήμα (сема), «знак, позначка, символ».
Си́нтаксис (дав.-гр. σύνταξις - "побудова, порядок, складання", від σύν - "з, разом" і ταξις - "впорядкування") - розділ граматики, що вивчає граматичну будову словосполучень та речень у мові.
Мо́ва програмува́ння (англ. Programming language) - це штучна мова, створена для передачі команд машинам, зокрема комп'ютерам. Мови програмування використовуються для створення програм, котрі контролюють поведінку машин, та запису алгоритмів.

Головний шлях до оволодіння майстерністю програмування будь-якою мовою програмування – це виконання самостійних практичних завдань. Даний навчальний посібник призначений допомогти студенту на простих прикладах вдосконалити свої навички в розробці професійних програмних продуктів. Приклади задач програмування, викладені в даному посібнику, ілюструють головні аспекти виконання курсової роботи з дисципліни «Комп’ютерні технології та програмування».

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

Найпростіші (лат. Protozoa, від дав.-гр. πρῶτος «перший» і ζῷα, форми множини ζῷον - «жива істота») - парафілетична або поліфілетична група одноклітинних або колоніальних еукаріотів, які мають гетеротрофний тип живлення.
Практика (грец. πράξις «діяльність») - доцільна і цілеспрямована діяльність, яку суб'єкт здійснює для досягнення певної мети. Практика має суспільно-історичний характер і залежить від рівня розвитку суспільства, його структури.
Графі́чний інтерфе́йс кори́стувача́ (ГІК, англ. GUI, Graphical user interface) - тип інтерфейсу, який дозволяє користувачам взаємодіяти з електронними пристроями через графічні зображення та візуальні вказівки, на відміну від текстових інтерфейсів, заснованих на використанні тексту, текстовому наборі команд та текстовій навігації.
Сучасні технології візуального програмування, представлені такими програмними продуктами, як, наприклад, Microsoft Visual Studio, дозволяють розв’язувати дані задачі легко та просто, не змушуючи програміста витрачати зайві сили.
Програміст, також програмник[Джерело?] - фахівець, що займається програмуванням, виконує розробку програмного забезпечення (в простіших випадках - окремих програм) для програмованих пристроїв, які, як правило містять один чи більше CPU.
Але основна мета посібника – це викладення методики і принципів коректного та структурованого програмування для самостійного вдосконалення навичок програмування при розробці складних алгоритмічних задач. Саме тому студентам пропонується виконувати свої програмні розробки на високому рівні деталізації, не вдаючись до засобів візуального програмування.

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

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

Інструкція - правовий акт, який створюється органами державного управління для встановлення правил, що регулюють організаційні, науково-технічні, технологічні, фінансові та інші спеціальні сторони діяльності та відносин установ, закладів, підприємств, службових осіб.
Елеме́нт (лат. elementum - стихія, первинна речовина) - нерозкладний (у даній системі) компонент складних тіл, матеріальних систем, теоретичних побудов; будь-який об'єкт, пов'язаний певними відношеннями з іншими об'єктами в єдиний комплекс.
Програ́мне забезпе́чення (програ́мні за́соби) (ПЗ; англ. software) - сукупність програм системи обробки інформації і програмних документів, необхідних для експлуатації цих програм.

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

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

В п’ятому та шостому розділах посібника розповідається про основи роботи з текстовими даними. Детально розглянуто питання роботи з файловими потоками даних та питання обробки текстової інформації з використанням функцій стандартної бібліотеки string.h.

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

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

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

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

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

Пере́клад - відтворення оригіналу засобами іншої мови із збереженням єдності змісту і форми. Ця єдність досягається цілісним відтворенням ідейного змісту оригіналу в характерній для нього стилістичній своєрідності на іншій мовній основі.
А́нглія (англ. England) - країна в Західній Європі, що входить до Сполученого королівства Великої Британії та Північної Ірландії. Найбільша за площею і населенням з чотирьох країн Сполученого королівства та трьох частин Великої Британії.
Вивчення наведених термінів корисно для поглиблення теоретичних знань з програмування та інформатики.

Автори посібника бажають усім студентам натхнення при вивченні дисципліни «Комп’ютерні технології та програмування» і сподіваються, що ця книга полегшить виконання завдань для самостійної роботи.

1 ОСНОВНІ ПРИНЦИПИ РОБОТИ З ГРАФІКОЮ МОВОЮ
ПРОГРАМУВАННЯ С

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

Натхне́ння ( англ. inspiration) - особливий стан людини, типова для творчості риса, її складовий елемент, який характеризується, з одного боку, високою продуктивністю, з другого боку - величезним підйомом і напругою сил людини.
Інформа́тика (англ. Computer Science, нім. Informatik) - наукова дисципліна, що вивчає методи та процеси створення, перетворення, зберігання, передачі інформації та використання її в різних галузях людської діяльності.
Промисло́вість - технічно найдосконаліша галузь матеріального виробництва, основа індустріалізації економіки, яка має вирішальний вплив на розвиток продуктивних сил; сукупність підприємств з виробництва електроенергії, знарядь праці для галузей економіки, видобутку сировини, палива, заготівлі лісу, переробки продукції, випущеної промисловістю або виробленої сільським господарством, видобуток і переробка сировини, виробництво товарів і послуг.
Основні принципи роботи з графікою не залежать від компіляторів та середовищ програмування. Тому даний розділ орієнтований як на викладення синтаксису, семантики основних конструкцій програм для роботи з графікою, так і на їх практичне використання при розв’язанні типових задач.


1.1 Загальні відомості
Заголовковий файл graphics.h

Бібліотека graphics.h містить набір функцій для забезпечення повного контролю над графічними режимами різних адаптерів дисплеїв: СGА, VGAHI, EGAHI, МСGA, Hercomohi, PC 3270, ATT400HI і IBM 8514HI. Бібліотека містить більше 50 функцій: як базових (креслення ліній, кіл і т. д.) так і розширюють можливості базових (креслення багатокутників, заповнення фігур, виведення тексту тощо).

Многоку́тник[К 1] (багатоку́тник, поліго́н) - геометрична фігура, замкнена ламана (сама, або разом із точками, що лежать усередині). Вершини цієї ламаної називають вершинами многокутника, а відрізки ламаної - сторонами многокутника.

Щоб запустити на виконання програму, в якій використовуються функції бібліотеки graphics.h, необхідно:

1.

Необхідність - система зв'язків і відносин, що зумовлює зміну, поступальний рух, розвиток у жорстко визначеному напрямку з жорстко визначеними результатами. Іншими словами, необхідність - це такий зв'язок, що обов'язково призводить до певної події.
Щоб в робочому каталозі знаходились відповідні графічні драйвери (файли з розширенням .BGI);

2. А якщо програма використовує штрихові шрифти, то необхідно, щоб в робочому каталозі знаходились файли шрифтів (файли з розширенням .CHR);

3. Крім того, в налаштуваннях середовища програмування (компіляторі) потрібно задати шлях до файлу graphics.h.


Файли ВGІ і вміст файлу graphics.h

Файл BGI – це файл, що містить графічний інтерфейс (Borland Graphic Interface) фірми Borland. Biн забезпечує взаємодію програм з графічними пристроями. До початку роботи програми в графічному режимі дисплея функція initgraph() визначає тип адаптера, наявного в ПЕОМ, і завантажує в пам’ять відповідний BGI-драйвер, в якому визначені можливі режими роботи.

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

Якщо в складі ПЕОМ є два монітори, то при визначенні графічних адаптерів автоматично вмикається графічний режим на тому пристрої, який дозволяє одержати найвищу якість зображення.

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

В робочому каталозі можуть знаходитися такі файли:

cga.bgi драйвер для ІВМСВА, МСGА;

egavga.bgi драйвер для IBM EGA, VGA;

gerc.bgi драйвер для Hercules;

att.bgi драйвер для ATIT6300\400 рядків;

  1   2   3   4   5   6   7   8   9   10   11