Pers.narod.ru. Навчання. Підручник по Паскалю. Глава 1

  1. Частина 1. Основи мови Паскаль Перша частина посібника призначена для вивчення базових прийомів програмування....
  2. 1.1. алгоритм
  3. 1.2. властивості алгоритму
  4. 1.3. Форми запису алгоритму
  5. 1.4. Програма та програмне забезпечення
  6. 1.5. Етапи розробки програми

Частина 1. Основи мови Паскаль

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

1. Алгоритм і програма

Написання програми завжди передує розробка деякого плану (алгоритму) рішення задачі. Коротко опишемо основні поняття теоретичної інформатики, пов'язані з алгоритмами.

1.1. алгоритм

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

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

1.2. властивості алгоритму

Перерахуємо виділені в п. 1.1 властивості алгоритму.

· Дискретність - алгоритм складається з окремих інструкцій (кроків).

· Однозначність - кожен крок розуміється виконавцем єдиним чином.

· Масовість - алгоритм працює при мінливих в деяких межах вхідних даних.

· Результативність - за кінцеве число кроків досягається певний результат.

1.3. Форми запису алгоритму

Прийнято виділяти 2 основних форми запису алгоритму.

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

1 вказані основні елементи блок-схем

Мал. 1.1. Основні елементи блок-схем

Зазначені на рис. 1.1 геометричні фігури інтерпретуються так:

Прямокутник - будь-яка послідовність дій; всередині прямокутника записуються формули або словесний опис виконуваних дій;

Ромб - блок перевірки умови; так як будь-яка умова може бути тільки істинно або хибно, у блоку 1 вхід і 2 виходи, відповідні діям, що виконуються у випадках, коли умова істинна і коли воно помилкове. Виходи підписують символами "+" і "-", "так" і "ні", "1" і "0" і т. П.

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

Лист з розривом - блок виведення даних. Усередині блоку вказується, які дані або повідомлення програма виводить для подання користувачеві;

Закруглені прямокутники - необов'язкові блоки початку і кінця програми, всередині блоків зазвичай вказуються ключові слова "поч" і "кон" відповідно;

Остання фігура служить для зображення циклів, як правило, у неї 2 входи (перший і повторний вхід в цикл) і 1 вихід, відповідний завершення циклічного процесу.

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

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

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

· Поч - початок програми;

· Кін - кінець програми;

· Якщо ... то ... інакше - перевірка умови;

· Введення - введення даних;

· Висновок - висновок даних;

· Для ... від .. до ... нц ... кц - цикл з лічильником (НЦ - початок циклу, кц - кінець);

· Поки ... нц ... кц - цикл з передумовою;

· Нц ... кц ... поки - цикл з умовою поста.

поки - цикл з умовою поста

Мал. 1.2. Блок-схема рішення квадратного рівняння

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

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

Програма - це реалізація алгоритму на конкретній мові програмування. Сукупність існуючих програм утворює програмне забезпечення (ПО). ПО прийнято ділити на 2 види.

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

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

1.5. Етапи розробки програми

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

1. Визначення вхідних і вихідних даних, вимог до програми.

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

2. Розробка алгоритму.

На цьому кроці проводиться визначення послідовності дій, що ведуть до розв'язання задачі і запис їх в одній із зазначених у п. 1.3 форм.

3. Кодування (програмування).

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

4. Компіляція і налагодження.

Оригінальний текст на Паскаль буде безпосередньо виконуватися комп'ютером - для роботи програми її потрібно відкомпілювати, т. Е., Перевести в машинний код. Цю роботу виконує спеціальна програма-компілятор або оболонка мови. Оболонка Паскаля, за допомогою якої ми будемо розробляти свої програми, називається Turbo Pascal 7.1, вона розроблена компанією Borland International в 1983-97 рр. В результаті перетворення компілятором вихідного тексту програми в машинний код виходить виконуваний файл з розширенням exe, який можна запустити (виконати) в тій операційній системі (ОС), для якої розроблено компілятор. Наша оболонка Паскаля створювалася для ОС MS - DOS, проте, в сучасних ОС сімейства Windows програма, написана на Паскалі, працювати все ж буде, правда, без зручних інтерфейсних можливостей Windows.

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

Можливі програмні помилки трьох видів:

· Синтаксичні (помилки в правилах мови);

· Алгоритмічні (помилки в логіці програми);

· Помилки часу виконання, що виникають в процесі роботи запущеної програми.

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

5. Тестування.

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

6. Документування та підтримка.

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

Новости