Мови програмування 2

[ виправити ] текст може містити помилки, будь ласка перевіряйте перш ніж використовувати.

скачати

Зміст

1. Введення

2. Сучасні мови програмування

2.1 Паскаль

2.2 Асемблер

2.3 Сі

2.4 Бейсік

2.5 Лого

2.6 Форт

2.7 Пролог

2.8 Рефаїл

2.9 Лекс

3 Поняття, призначення та складові елементи систем програмування

3.1 Машинно-орієнтовані системи програмування

3.1.1 Машинний мова

3.1.2 Системи символічного кодування

3.1.3 Автокод

3.1.4 Макрос

3.2 Машинно-незалежні системи програмування

3.2.1 Процедурно-орієнтовані системи

3.2.2 Проблемно-орієнтовані системи

3.2.3 Діалогові мови

3.2.4 непроцедурної мови

4 Висновки

5 Практична частина

6 Список літератури

  1. Введення

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

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

У своїй роботі мені хотілося б розібрати кілька основних сучасних мов, таких як Паскаль, Асемблер, С + +, Бейсік, Лого, Форт, Пролог, Рефаїл і Лекс, а також системи програмування та їх складові (машинну мову, системи символічного кодування, автокоди , макроси, процедурно-орієнтовані системи, проблемно-орієнтовані системи, діалогові мови, непроцедурного мови).

Якщо простежити історію використовуваних сьогодні мов програмування, таких як Сі і Паскаль (а також і менш популярних Бейсік, Фортран або Ада), то виявиться, що всі вони були створені на рубежі 60-х і 70-х років. Іншими словами, вік сучасних мов програмування (за винятком Яви, про яку розмова особлива), перевалив за третій десяток, що для комп'ютерної індустрії є строком екстремальним. Сучасні мови програмування старше Інтернету, Windows і персонального комп'ютера мінімум на десятиліття. При цьому нові мови не переставали регулярно з'являтися, однак жоден з них не затримався в практиці програмування, хоча принесені ними нові ідеї доповнювали вже відомі мови (як це сталося з об'єктно-орієнтованим програмуванням).

Іншою важливою особливістю мовотворення останніх десятиліть можна вважати припинення спроб створення "універсального" мови програмування, покликаного об'єднати в собі всі останні досягнення в області розробки мов (зі спроб 60-х _ 70-х років можна згадати Алгол, PL / 1 або Аду). Великі "мовні" проекти безповоротно пішли в минуле разом з породженими ними мовами.

Нарешті, поява персонального комп'ютера і ОС з графічним інтерфейсом (перш за все MacOS і Windows) перемістило увагу розробників програмного забезпечення з сфери мов програмування в інші області засобів розробки ПЗ, такі, як візуальне або об'єктно-орієнтоване програмування, мережеві протоколи або моделі баз даних. Програміст сьогодні використовує в якості інструменту не стільки мова, скільки конкретну систему програмування (наприклад, Delphi), а яка мова є для неї базовим, не так уже й важливо.

Отже, інтерес до мов програмування знизився, а коло використовуваних мов стабілізувався. У певному сенсі можна вважати, що в області мов програмування "все сказано", і розвиток засобів розробки ПЗ піде далі іншими шляхами. Настав вдалий момент для аналізу сучасних мов програмування та з'ясування досягнутих практичних результатів.

  1. Сучасні мови програмування

Перші кілька поколінь ЕОМ будувалися на класичних принципах, сформульованих американським математиком Джоном фон Нейманом в 1946 р., коли почалися розробки цифрових ЕОМ з програмним управлінням. Одним з основних принципів Д. фон Неймана є принцип зберігається програми. Під програмою обчислювальної машини розуміється опис алгоритму розв'язання задачі, заданий на мові обчислювальної машини. Таким чином, мови програмування - це формальні мови спілкування людини з ЕОМ, призначені для опису сукупності інструкцій, виконання яких забезпечує правильне рішення необхідної задачі, тобто для опису підлягають обробці даних (інформації) та алгоритмів (програм). Основна роль мов програмування полягає в плануванні дій по обробці інформації. Будь-яка мова програмування заснований на системі понять, на основі якої людина може висловлювати свої міркування.

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

Рис.1. Класифікація мов програмування

2.1 Паскаль 1

У 1968 році Ніклас Вірт (Niklaus Wirth) написав перший компілятор мови Pascal (Паскаль). Ця мова отримав назву на честь видатного французького математика Блеза Паскаля (Blaise Pascal). Мова Pascal - вдалий мова загального застосування, що підходить для програмування як наукових завдань, так і завдань, пов'язаних з комерційною діяльністю. Засоби введення / виводу цієї мови дещо слабше, ніж у таких комерційних мов, як COBOL, тому він ніколи не претендував на його заміщення. Тим не менше після першого опублікування Pascal був досить грунтовним мовою, який успішно справлявся зі своєю роботою.

Популярність мови Pascal різко підскочила в 1970-х. Найбільша перевага цієї мови - підтримка концепції структурного програмування, що дозволяє робити програми більш зручними для зміни. Ідеологія структурного програмування інтегрована в мову, тому програми на мові Pascal простіше в обслуговуванні, ніж програми, написані на інших мовах того часу.

Протягом 1970-х років Pascal був «єдиною мовою програмування, який всіх влаштовував». Компанія IBM за допомогою мови PL / I робила спробу створити щось подібне. Так само як і PL / I, Pascal не досяг найвищої мети. Популярність мови Pascal впала так само швидко, як і виросла. У 1970-х спостерігався величезний ріст застосування мови Pascal, а в 1980-х - різкий спад інтересу до нього.

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

2.2 Асемблер 1

Мова Асемблера - це символічне представлення машинної мови. Він полегшує процес програмування в порівнянні з програмуванням в машинних кодах. Деякі завдання, наприклад, обмін з нестандартними пристроями обробки даних складних структур неможливо вирішити за допомогою мов програмування високого рівня. Це під силу асемблеру. У принципі, мова Асемблер є машинною мовою. І програміст, який реалізує якусь завдання на мову високого рівня, за допомогою Асемблера може визначити осмислено чи рішення даного завдання, з точки зору використання ЕОМ. Асемблер має одну особливість, яка відлякує багатьох початківців мов програмістів, - асемблер є машинно-залежним мовою. Це означає, що пише на асемблері працює безпосередньо з ресурсами комп'ютера, що вимагає гарного знання його архітектури, логіки роботи операційної системи, а також великої акуратності при написанні програми.

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

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

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

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

2.3 Сі + + 1

Спадкоємець C мову C + + швидко завоював підтримку, будучи оновленою версією мови C. C + + був розроблений шведським програмістом на ім'я Бьярн Страуструп (Bjarne Stroustrup) на початку 1980-х. C + + має на озброєнні кілька додаткових команд і операторів, але основна відмінність полягає в підході до програмування.

Головна причина, по якій і зараз C + + залишається популярним, - він підтримує об'єктно-орієнтоване програмування (ООП). ООП - це інший спосіб написання програм, що допомагає програмістові писати програми швидше і з найменшою кількістю помилок. ООП також дозволяє підвищити швидкість обслуговування.

Так як Сі + + сходить, головним чином, до Сі. Тому зробленого в Сі акценту на засобах низького рівня досить, щоб справлятися із самими насущними завданнями системного програмування. Сі, в свою чергу, багато чим зобов'язаний своєму попередникові BCPL.

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

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

Якщо користувачеві знадобиться подібний тип, його можна визначити в самій мові. По суті справи, основним, чим займається програмування на Сі + + - це визначення універсальних та спеціально-прикладних типів.

Популярність об'єктно-орієнтованої мови C + + дала початок безлічі нових мов для сучасного Інтернету. Причиною успішного розвитку мови Java (Джава) (і його похідних, таких, як JavaScript) є широкомасштабне використання в ньому мови C + +, і хоча C + + не підтримує достатній безпеці програмування web-сайтів, його об'єктно-орієнтована природа робить Java гарним кандидатом для програмування об'єктів Інтернету . Компанія Sun Microsystems змінила мову C + +, додавши до нього елементи забезпечення достатньої безпеки і прибравши ряд сумнівних можливостей C + +. (Прикладом є множинність успадкування, яка дозволяє генерацію одного об'єкта програмування, такого як вікно, з набору декількох батьківських вікон з різними характеристиками. Подібна концепція збиває з пантелику навіть при формулюванні її на високому рівні.)

2.4 Бейсік

BASIC був розроблений в коледжі міста Дартмут (Dartmouth) і призначався для навчання початківців. Мова FORTRAN був складним для студентів нематематичних відділень. Джон Кіміні (John Kemeny) і Томас Курц (Thomas Kurtz), які навчалися в Дартмут, при розробці мови BASIC в якості основи використовували FORTRAN. BASIC - скорочення від Beginner's All-purpose Symbolic Instruction Code (універсальний код символічних інструкцій для початківців) - ім'я, яке говорить сама за себе. BASIC, як правило, використовується з інтерпретатором, хоча сучасні версії BASIC є компілюється. Це дозволяє новачкам зосередитися на мові програмування і не вникати в особливості компіляції. Як і всі мови, що інтерпретуються, BASIC-програми виконуються повільніше, ніж відкомпілювалися, тому програми на мові BASIC не використовуються в комерційних додатках.

Ця мова став одним з найпоширеніших. Бейсік був спочатку задуманий як дуже проста мова, який можна було б дуже швидко освоїти. У мову були включені примітивні засоби редагування, з тим, щоб позбавити користувача від необхідності розбиратися у всіх складнощах базової операційної системи. Спочатку Бейсік використовувався тільки для обробки числових величин, але пізніше було розширено засобами обробки строкових змінних і забезпечений набором процедур простого маніпулювання символьними ланцюжками, який фактично став стандартом. Простота Бейсіка зробила його найбільш підходящим мовою програмування для перших мікроЕОМ. В даний час він є основною мовою програмування персональних ЕОМ. На жаль, майже кожна машина має свій власний діалект Бейсіка, тому мобільність програм на Бейсіку забезпечити досить важко. В даний час в багато діалекти Бейсіка включаються сучасні керуючі структури типу: REPEAT ... UNTIL, що вселяє певний оптимізм.

2.5 Лого

Мова Лого був створений з метою навчання школярів основам алгоритмічного мислення і програмування. Лого - діалоговий процедурна мова, реалізований на основі інтерпретатора з можливістю роботи зі списками і на їх основі з текстами, оснащений розвиненими графічними засобами, які доступні для дитячого сприйняття. Ця мова реалізований для більшості ПЕОМ, що застосовуються в школах. Хоча мова була розроблений задовго до того, як почалося масове поширення персональних комп'ютерів, саме з їх появою ця мова привернув увагу і придбав популярність.

2.6 Форт

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

2.7 Пролог

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

2.8 Рефаїл

Безсумнівно треба розповісти і про деяких мовах програмування створених у нас на батьківщині. Один з таких мов є Рефаїл, розроблений у нас в Росії (СРСР), в 1966р. ІПМ АН СРСР. Ця мова простий і зручний для опису маніпуляцій над довільними текстовими об'єктами.

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

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

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

Певною специфікою володіють і змінні типу «висловлювання» мається на увазі їх здатність подовжуватися при ототожненні. Правильне використання змінних цього типу також дозволяє значно підвищити ефективність Рефаїл - програми.

2.9 Лекс

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

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

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

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

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

3 Поняття, призначення та складові елементи систем програмування

Системою програмування називається комплекс програм, призначений для автоматизації програмування задач на ЕОМ. Система програмування звільняє користувача або програміста від необхідності написання програм вирішення своїх завдань на незручному для нього мові машинних команд, і надають їм можливість використовувати спеціальні мови більш високого рівня. Для кожного з таких мов, які називаються вхідними або вихідними, система програмування має програму, що здійснює автоматичний переклад (трансляцію) текстів програми з вхідного мови на мову машини. Зазвичай система програмування містить описи вживаних мов програмування, програми - транслятори з цих мов, а також розвинену бібліотеку стандартних підпрограм. Важливо розрізняти мову програмування і реалізацію мови.

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

Реалізація мови - це системна програма, яка переводить (перетворює) запису на мові високого рівня у послідовність машинних команд.

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

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

3.1 Машинно-орієнтовані системи програмування 1

Машинно-орієнтовані системи програмування мають вхідна мова, набори операторів і образотворчі засоби, які істотно залежать від особливостей ЕОМ (внутрішнього мови, структури пам'яті і т.д.). Машинно-орієнтовані системи дозволяють використовувати всі можливості та особливості машинно-залежних мов:

  • висока якість створюваних програм;

  • можливість використання конкретних апаратних ресурсів;

  • передбачуваність об'єктного коду та замовлень пам'яті;

  • низька швидкість програмування;

  • неможливість безпосереднього використання програм, складених на цих мовах, на ЕОМ інших типів.

3.1.1 Машинний мова 1

У таких системах програмування окремий комп'ютер має свій певний машинний мову. Деякі сімейства ЕОМ (наприклад, ЄС ЕОМ, IBM / 370 / та ін) мають єдиний машинний мова для ЕОМ різної потужності. У нових моделях ЕОМ намічається тенденція до підвищення внутрішніх мов машинно-апаратним шляхом. Машинний мова є внутрішнім мовою ЕОМ і представляє собою систему інструкцій і даних, які не вимагають трансляції і можуть безпосередньо інтерпретуватися і виконуватися апаратними засобами ЕОМ.

3.1.2 Системи символічного кодування 1

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

3.1.3 Автокод

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

3.1.4 Макрос

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

3.2 Машинно-незалежні системи програмування 1

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

3.2.1 Процедурно-орієнтовані системи 1

Вхідні мови програмування в таких системах служать для запису алгоритмів (процедур) обробки інформації, характерних для вирішення задач певного класу. Ці мови, повинні забезпечити програміста засобами, що дозволяють коротко і чітко формулювати завдання отримувати результати у необхідній формі. Процедурних мов дуже багато, наприклад; Фортран, Алгол - мови створені для вирішення математичних завдань;

Simula, сленг - для моделювання; Лісп, Снобол - для роботи з обліковим структурами.

3.2.2 Проблемно-орієнтовані системи 2

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

3.2.3 Діалогові мови 1

Поява нових технічних можливостей поставило завдання перед системними програмістами - створити програмні засоби, що забезпечують оперативну взаємодію людини з ЕОМ їх назвали діалоговими мовами. Розроблялися мови, які крім цілей управління забезпечували б опис алгоритмів рішення задач. Необхідність забезпечення оперативної взаємодії з користувачем зажадала збереження в пам'яті ЕОМ копії вихідної програми навіть після отримання об'єктної програми в машинних кодах. При внесенні змін до програми система програмування за допомогою спеціальних таблиць встановлює взаємозв'язок структур вихідної і об'єктної програм. Це дозволяє здійснити необхідні редакційні зміни в об'єктній програмі.

3.2.4 непроцедурного мови 2

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

4 Висновки

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

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

· У 1970-х найпопулярнішою мовою загального застосування був Pascal, але в 1980-х його застосування різко скоротилося.

· Мова C, розроблений компанією Bell Laboratories, є дуже ефективним, але низькорівневим мовою програмування. Мова C - це основа сучасних мов.

· Найбільшою перевагою мови C + + над його попередником є підтримка об'єктно-орієнтованого програмування.

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

· Вибір використовуваного мови визначається багатьма факторами.

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

5 Практична частина

1. Використовуючи ППП на ПК, необхідно побудувати таблиці за наведеними нижче формами (рис. 2, 3).

Визначити середній бал екзаменаційної сесії по курсах і по факультету.

Результати округлити до одного десяткового знака після коми, використовуючи функцію ОКРУГЛ. Визначити рейтинг (місце за рівнем успішності) кожного курсу.

Ввести поточне значення дати між таблицею і її назвою.

За даними таблиці на рис.3 (графи 1 і 2) побудувати кругову діаграму з заголовком, підписами даних і легендою.

1 курс

2 курс

3 курс

4 курс

5 курс

Бал

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

Бал

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

Бал

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

Бал

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

Бал

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

1

2

3

4

5

6

7

8

9

10

5

23

5

27

5

32

5

28

5

34

4

57

4

60

4

58

4

63

4

62

3

18

3

14

3

10

3

9

3

6

2

7

2

9

2

4

2

1

2

Рис.2. Відомості про результати екзаменаційної сесії

Курс

Середній бал

Рейтинг

1

2

3

1


2


3


4



5



По факультету



Рис.3 Середній бал за курсами і факультету

2. Використовуючи Microsoft Excel, будуємо таблиці, наведені на рис.2, 3.

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

Щоб округлити результат до одного десяткового знака після коми, використовуємо функцію ОКРУГЛ. Формат команди: ОКРУГЛ (А; В), де А - десяткове число; В - до якого знака необхідно округлити.

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

Вводимо поточне значення дати між таблицею і її назвою.

За допомогою функції "майстер діаграм" будуємо кругову діаграму за даними таблиці (рис.3) називаємо її "Середній бал з курсів".

Далі наведено неформалізовані рішення задачі і инфологическая модель вирішення задачі.

Рис.4. Неформализованное рішення задачі

Рис.5 Инфологическая модель вирішення задачі

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

Таблиця 1.

Таблиця з вихідними даними

1 курс

2 курс

3 курс

4 курс

5 курс

бал

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

бал

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

бал

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

бал

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

бал

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

1

2

3

4

5

6

7

8

9

10

5

23

5

27

5

32

5

28

5

34

4

57

4

60

4

58

4

63

4

62

3

18

3

14

3

10

3

9

3

6

2

7

2

9

2

4

2

1

2
















курс

середній бал

рейтинг


Середній бал

Округлі.





1

2

3


3,85981

3,9





1

3,9

5


3,92105

3,9





2

3,9

4


4,18182

4,2





3

4,2

3


4,37615

4,4





4

4,4

2


4,69643

4,7





5

4,7

1



Ріс.3.Вспомогательная таблиця.

по факультету

4,2










рис.2. Середній бал по курсах і факультету.





Середній бал з курсів

1-Середній бал по 1-му курсу.

2-Середній бал по 2-му курсу.

3 - Середній бал по 3-му курсу.

4 - Середній бал по 4-му курсу.

5 - Середній бал за 5-му курсу.

Курс

Середній бал

Рейтинг

1

2

3

1

= ОКРУГЛ ((A3 * B3 + A4 * B4 + A5 * B5 + A6 * B6 + A7 * B7) / B8; 1)

ЯКЩО (E 12 = НАЙБІЛЬШИЙ (E 12: E 16; 1); 1; ЕСЛИ (E 12 = НАЙБІЛЬШИЙ

(E12: E16, 2); 2; ЕСЛИ (E12 = НАЙБІЛЬШИЙ (E12: E16, 3); 3;

ЯКЩО (E 12 = НАЙБІЛЬШИЙ (E 12: E 16, 4); 4; 5))))

2

= ОКРУГЛ ((C3 * D3 + C4 * D4 + C5 * D5 + C6 * D6 + C7 * D7) / 114; 1)

ЯКЩО (E13 = НАЙБІЛЬШИЙ (E12: E16; 1); 1; ЕСЛИ (E13 = НАЙБІЛЬШИЙ

(E12: E16, 2); 2; ЕСЛИ (E13 = НАЙБІЛЬШИЙ (E12: E16, 3); 3;

ЯКЩО (E13 = НАЙБІЛЬШИЙ (E12: E16, 4); 4; 5))))

3

= ОКРУГЛ ((E3 * F3 + E4 * F4 + E5 * F5 + E6 * F6 + E7 * F7) / 110; 1)

= ЕСЛИ (E14 = НАЙБІЛЬШИЙ (E12: E16; 1); 1; ЕСЛИ (E14 = НАЙБІЛЬШИЙ (E12: E16, 2); 2; ЕСЛИ (E14 = НАЙБІЛЬШИЙ (E12: E16, 3); 3; ЕСЛИ (E14 = НАЙБІЛЬШИЙ (E12: E16, 4); 4; 5))))

4

= ОКРУГЛ ((G3 * H3 + G4 * H4 + G5 * H5 + G6 * H6 + G7 * H7) / 109; 1)

= ЕСЛИ (E15 = НАЙБІЛЬШИЙ (E12: E16; 1); 1; ЕСЛИ (E15 = НАЙБІЛЬШИЙ (E12: E16, 2); 2; ЕСЛИ (E15 = НАЙБІЛЬШИЙ (E12: E16, 3); 3; ЕСЛИ (E15 = НАЙБІЛЬШИЙ (E12: E16, 4); 4; 5))))

5

= ОКРУГЛ ((I3 * J3 + I4 * J4 + I5 * J5 + I6 * J6 + I7 * J7) / 112; 1)

= ЕСЛИ (E 16 = НАЙБІЛЬШИЙ (E 12: E 16; 1); 1; ЕСЛИ (E 16 = НАЙБІЛЬШИЙ (E 12: E 16, 2); 2; ЕСЛИ (E 16 = НАЙБІЛЬШИЙ (E 12: E 16; 3); 3; ЕСЛИ (E 16 = НАЙБІЛЬШИЙ (E 12: E 16, 4); 4; 5))))

По факультету

= (B12 + B13 + B14 + B15 + B16) / 5


Курс

Середній бал

Рейтинг

1

2

3

1

(1 * 2 +5 * 23 +4 * 57 +3 * 18 +2 * 7) / (2 +23 +57 +18 +7) = 3,859813

5

2

(3 * 4 +5 * 27 +4 * 60 +3 * 14 +2 * 9) / (4 +27 +60 +14 +9) = 3,92105

4

3

(5 * 6 +5 * 32 +4 * 58 +3 * 10 +2 * 4) / (6 +32 +58 +10 +4) = 4,18182

3

4

(7 * 8 +5 * 28 +4 * 63 +3 * 9 +2 * 1) / (8 +28 +63 +9 +1) = 4,37615

2

5

(9 * 10 +5 * 34 +4 * 62 +3 * 6 +2) / (10 +34 +62 +6) = 4,69643

1

По факультету

3,85981 +3,92105 +4,18182 +4,37615 +4,69643 = = 4,207052


У практичній частині з використанням процесора MS Excel я розрахувала і представила у табличному вигляді згідно заданим формам результати екзаменаційної сесії з визначенням середнього балу за курсами і факультету і рейтинг успішності кожного курсу.

6 Список літератури

  1. В.Ю. Дем'яненко. "Програмні засоби створення та ведення баз даних". - М.: Фінанси і статистика, 1984.

  2. В.А. М'ясників, С.А. Майоров, Г.І. Новіков. ЕОМ для всіх. - М.: Знання, 1985.

  3. А.Г. Гейн. "Основи інформатики та обчислювальної техніки". - М.: Просвещение, 1997.

  4. В.Ф. Ляхович. "Основи інформатики" .- Ростов-на-Дону: Фенікс, 1996.

  5. "Обчислювальна техніка та програмування" / За ред. А.В. Петрова-М.: Вищ. Шк., 1990.

  6. "Інформаційні технології управління": Інфоматіка-М.Ф. Змінює: Омега-л, 2003.

  7. "Комп'ютерні системи та мережі" / За ред. В.П. Косарєва й Л.В. Єрьоміна-М.: Фінанси і статистика, 1999.

  8. "Економічна інформатика": Під ред. В.П. Косарєва й Л.В. Єрьоміна-М.: Фінанси статистика, 2001.

  9. "Інформатика": Під ред. Н.В. Макарової: Фіс., 1997

  10. "Інформатика", базовий курс, 2-е видання. / За ред. С.В. Симоновича-СПб. Пітер, 2004.

  11. Леонтьєв: "Новітня енциклопедія програмного комп'ютера": Прес, 2003.

  12. Савінков В.М. "Тлумачний словник з інформатики" - 2-е видання,-М.: Фінанси і статистика, 1995.

  13. "Обчислювальні машини, системи та мережі" / За ред. А.П. Пятібратова.-М.: Фінанси і статистика, 1991.

  14. Якубайтіс Е.А. "Інформаційні мережі та системи". Довідкова книга. - М.: Фінанси і статистика, 1996.

  15. "Економічна інформатика і обчислювальна техніка": Г.А. Титоренко, Н.Г. Черняк і ін; Під ред. В. П. Косарєва, О. Ю. Корольова .- 2-е видання, перероб. і доп.-М.: Фінанси і статистика, 1996.

  16. Якубайтіс Е.А. "Інформатика - Електроніка - Мережі". - М.: Фінанси і статистика, 1984.

  17. "Персональний комп'ютер для всіх" / Під ред.А.Я. Савельєва. - М.: Вища школа, 1991.

  18. "Інформатика". Енциклопедичний словник для початківців. - М.: Прес, 1994.

  19. Острейковскій В.А. "Інформатика". - М.: Вища школа, 2000.

  20. Малютін Е.А., Малютіна Л.В. Мови програмування, 1982 р

21. Ваулин А.С. Мови програмування .- кн.5, 1993 р.;

1 Самовчитель програмування.

1 Леонтьєв. Новітня енциклопедія програмного комп'ютера. - Прес, 2003.

1 Острейковскій В.А. Інформатика. - М.: Вища школа, 2000

1 М.Ф. Міняємо. Інформаційні технології управління .- Омега-л, 2003

1 Обчислювальні машини, системи та мережі - Під ред. А.П. Пятібратова.-М.: Фінанси і статистика, 1991).

1 Якубайтіс Е.А. Інформаційні мережі та системи. Довідкова книга .- М.: Фінанси і статистика, 1996

1 Савінков В.М. Тлумачний словник з інформатики .- 2-е видання,-М.: Фінанси і статистика, 1995

1 Інформатика, базовий курс, 2-е видання. / За ред. С.В. Симоновича-СПб. Пітер, 2004

2 Економічна інформатика .- Під ред. В.П. Косарєва й Л.В. Єрьоміна-М.: Фінанси статистика, 2001

1 Персональний комп'ютер для всіх .- Під ред.А.Я. Савельєва. - М.: Вища школа, 1991

2 В.Ф. Ляхович. Основи інформатики .- Ростов-на-Дону: Фенікс, 1996


Додати в блог або на сайт

Цей текст може містити помилки.

Програмування, комп'ютери, інформатика і кібернетика | Курсова
130.6кб. | скачати


Схожі роботи:
Мови програмування
Операції мови програмування С
Мови та технологія програмування 2
Алгоритмічні мови програмування
Мови та системи програмування
Мови та технологія програмування
Основи мови програмування Лісп
Проблемно-орієнтовані мови програмування
Основи програмування та алгоритмічні мови
© Усі права захищені
написати до нас