10. Системи автоматизованого перекладу. Розрізняють електронні словники та програми перекладу мови. Електронні словники – це засоби для перекладу окремих слів у документі. Потрібні для професійних перекладачів, які самостійно перекладають текст. Програми автоматичного перекладу отримують текст однією мовою і видають його іншою, тобто автоматизують переклад. При автоматизованому перекладі неможливо отримати якісний вихідний текст, оскільки все зводиться до перекладу окремих лексичних одиниць. Але для технічного тексту цей бар’єр знижений.
11. Інтегровані системи діловодства. Засоби для автоматизації робочого місця керівника. Зокрема, це функції створення, редагування і форматування документів, централізація функцій електронної пошти, факсимільного та телефонного зв’язку, диспетчеризація та моніторинг документообігу підприємства, координація дій підрозділів, оптимізація адміністративно-господарської діяльності й поставка оперативної та довідкової інформації.
12. Бухгалтерські системи. Містять у собі функції текстових, табличних редакторів та СУБД. Призначені для автоматизації підготовки початкових бухгалтерських документів підприємства та їх обліку, регулярних звітів за підсумками виробничої, господарської та фінансової діяльності у формі, прийнятній для податкових органів, позабюджетних фондів та органів статистичного обліку.
13. Фінансові аналітичні системи. Використовують у банківських та біржових структурах. Дозволяють контролювати та прогнозувати ситуацію на фінансових, торговельних та ринках сировини, виконувати аналіз поточних подій, готувати звіти.
14. Експертні системи. Призначені для аналізу даних, що містяться у базах знань, і видачі результатів при запиті користувача. Такі системи використовуються, коли для прийняття рішення потрібні широкі спеціальні знання. Використовуються у медицині, фармакології, хімії, юриспруденції. З використанням експертних систем пов’язана галузь науки, що зветься інженерією знань. Інженери знань – це фахівці, які є проміжною ланкою між розробниками експертних систем (програмістами) та провідними фахівцями у конкретних галузях науки й техніки (експертами).
15. Геоінформаційні системи (ГІС). Призначені для автоматизації картографічних та геодезичних робіт на основі інформації, отриманої топографічним або аерографічним методами.
16. Системи відеомонтажу. Призначені для цифрової обробки відеоматеріалів, монтажу, створення відеоефектів, виправлення дефектів, додавання звуку, титрів та субтитрів. Окремі категорії представляють навчальні, довідкові та розважальні системи й програми. Характерною особливістю є підвищені вимоги до мультимедійної складової.
17. Інструментальні мови та системи програмування. Ці засоби служать для розробки нових програм.
Мови програмування
Процес роботи комп’ютера полягає у виконанні програми, набору команд у визначеній послідовності. Машинний код команди складається з 0 та 1 і вказує, яку саме дію повинен виконати центральний процесор. Тому, щоб задати комп’ютеру послідовність дій, які він повинен виконати, треба задати послідовність двійкових кодів відповідних команд. Програми в машинних кодах складаються з тисячі команд. Писати такі програми дуже важко. Програміст повинен пам’ятати комбінацію нулів та одиниць двійкового коду кожної команди, а також двійкові коди адрес даних, які використовуються під час її виконання. Набагато простіше написати програму на якій-небудь мові, більш близькій до природної людської мови, а роботу з перекладу цієї програми доручити комп’ютеру. Так виникли мови, призначені спеціально для написання програм, – мови програмування. Мова програмування – це система позначень для точного опису алгоритмів для комп’ютера.
Усю безліч мов програмування можна розділити на дві груп: мови низького і високого рівнів.
До мов низького рівня відносяться мови асемблера (англ. to assembler – збирати, компонувати).
Мови високого рівня почали з’являтися уже з середини 50-х років. Однією з перших мов такого типу стала мова програмування Фортран. Після Фортрану у 1957 році з’являється мова Алгол. У 1959–1960 рр. – Кобол та Лісп. У 1966 році – Бейсік, на початку 70-х – Пролог, 1971 рік – Паскаль, на його базі у кінці 70-х – Ада, а в 1972 році було створено Сі.
В останні десятиріччя в програмуванні виник і отримав розвиток об’єктно-орієнтований підхід. Більшість сучасних мов об’єктно-орієнтовані. Серед них – версії мов Turbo Pascal, C++ та ін. У наш час широко використовуються системи візуального програмування Visual Basic, Visual C++, Delphi та ін. Вони дозволяють створювати прикладні пакети, які володіють простим та зручним інтерфейсом користувача.
Створити мову, зручну для написання програм, недостатньо. Для кожної мови потрібен свій перекладач. Такими перекладачами є спеціальні програми – транслятори.
Транслятор – це програма, призначена для перекладу програми, написаної однією мовою програмування, у програму іншою мовою програмування. Процес перекладу називається трансляцією.
Тексти вихідної і результуючої програм знаходяться в пам’яті комп’ютера. Прикладом транслятора є компілятор.
Компілятор – це програма, призначена для перекладу програми, написаної будь-якою мовою, у програму в машинних кодах. Процес такого перекладу називається компіляцією. Компілятор створює закінчений результат – програму в машинних кодах.
Інтерпретатор – програма, призначена для порядкової трансляції і виконання вхідної програми. Такий процес має назву інтерпретації. Транслятор (компілятор), на відміну від інтерпретатора, не виконує програму, а тільки перекладає її з однієї мови на іншу.
Потрібно пам’ятати, що перед тим як писати програму мовою високого рівня, програміст повинен скласти алгоритм рішення задачі, тобто покроковий план дій, який потрібно виконати для рішення цієї задачі. Тому мови, що вимагають попереднього складання алгоритму, часто називають алгоритмічними мовами. Поняття алгоритму буде дано в наступному розділі.
Роздiл VI
Основи програмування
Алгоритмізація
Алгоритм та програма
Алгоритм дій комп’ютера представляє собою систему правил, які визначають процес перетворення вхідних даних у результат. Ці правила повинні передбачити всі ситуації, які можуть виникнути під час виконання цього процесу. Але цього не достатньо, ще потрібно ці правила поведінки перетворити у таку форму, щоб будь-яка апаратна частина комп’ютера зрозуміла їх. Тільки після цього комп’ютер «оживає», усі його пристрої можуть виконувати свої функції.
Такою формою подання алгоритму є програма. Програма містить інструкції (вказівки) на мові, яка зрозуміла комп’ютерові. Вона повідомляє комп’ютеру, як треба обробляти дані, щоб отримати бажаний результат. Комп’ютер без програми – це «купа заліза».
Поняття алгоритму. Виконавець алгоритмів
Будь-яка людина у своєму житті стикається з великою кількістю задач, від найпростіших до дуже складних. Деякі задачі потребують творчого підходу, нам потрібно винайти унікальний спосіб для вирішення цих задач. Найчастіше таке можна сказати про складні життєві ситуації, де немає однозначно вірної відповіді чи схеми дій. Але часто можна почути російський вислів «не изобретать велосипед». Це означає, що для інших задач уже існують перевірені правила (інструкції), які пояснюють, як розв’язати дану задачу. Щоб вирішити аналогічну, треба тільки дотримуватися інструкцій. Наприклад, складання у стовпчик. Такі інструкції можна назвати алгоритмом, якщо вони відповідають властивостям алгоритму.
Алгоритм – це опис послідовних дій (план), суворе дотримання виконання яких приводить до розв’язання поставленої задачі.
Виконувати алгоритм, тобто дотримуватися інструкцій може не тільки людина. Виконавцем алгоритму може бути також ЕОМ, система людина – машина, автомат, робот тощо, яких «навчено» виконувати вказівки алгоритму.
Що означає «навчено»? Виконавець повинен «розуміти» кожну подану команду автоматично, не має бути подвійних тлумачень або необхідності зовнішнього втручання. Сукупність вказівок, які можуть бути виконані виконавцем, називається системою вказівок виконавця.