Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
9
Добавлен:
23.02.2016
Размер:
4.02 Mб
Скачать

2 Основи проектування додатків

2.1 Етапи проектування задач

При проектуванні програмного забезпечення потрібно притримуватися таких етапів його реалізації:

  1. Постановка задачі.На цьому етапі потрібно чітко вияснити, які дані необхідні для розв’язку задачі, які дані потрібно одержувати як результат, які об’єкти потрібні для занесення на екранну форму, їх призначення та розміщення.

  2. Алгоритмізація.Це дуже відповідальний етап проектування. Про нього буде більш детальна розмова далі.

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

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

  5. Типові розрахункипо створеному додатку.

2.2 Алгоритмізація задач

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

Алгоритми можуть бути представлені словесно, у вигляді послідовності виконуваних формул, в вигляді геометричних фігур та інше.

Якщо алгоритм представлений геометричними фігурами, він називається блок-схемою. В блок-схемах фігури представляються у відповідності з ГОСТ–19.003-80, а правила їх з’єднання регламентуються ГОСТ–19.002-80. Найбільш часто вживані фігури приведені у таблиці 1.

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

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

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

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

Таблиця 1 – Фігури, що використовуються в блок-схемах

Назва блока

Зображення

Призначення

Надпис в середині блока

Процес

Перетворення даних

Закон перетворення

Рішення

Розгалуження обчислювального процесу

Умова розгалуження

Введення, виведення

Введення або виведення даних незалежно від типу пристрою

Дія і перелік даних введення-виведення

Пуск, зупинка

Початок та кінець алгоритму

Текст, що відповідає початку чи кінцю процесу

Наперед визначений процес

Виклик підпрограми

Ім’я підпрограми

Модифікація

Організація циклу

Параметри циклу (початкове, кінцеве значення та крок переадресації)

З’єднувачі

З’єднання ліній обчислювального процесу

Літери або літери з цифрами

Магнітний носій

Запис (читання) даних на магнітний носій

Перелік даних запису/зчитування

Наприклад, знайти площу трикутника за трьома відомими сторонами, скористувавшись формулою Герона (рис. 2)

Рисунок 2 – Схема лінійного алгоритму

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

Рисунок 3 – Розв’язок системи лінійних рівнянь

При розв’язуванні багатьох задач часто буває потрібно виконати одні і ті ж обчислювальні процеси над різними даними багаторазово. Такі процеси називаються циклічними. В залежності від кількості повторень такі процеси поділяються на:

  • цикли з визначеною кількістю повторень;

  • цикли з невизначеною кількістю повторень (ітераційні циклічні процеси).

Щоб організувати цикл потрібно виконати такі дії:

  1. до початку циклу задати початкове значення його параметру та виконати підготовчі операції;

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

  3. перевірити умову закінчення циклу і перейти до наступного його виконання, якщо ця умова не виконується; при виконанні умови закінчення циклу завершити цикл.

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

Рисунок 4 – Блок-схема знаходження І!

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

Якщо ця нерівність істинна, будуть виконуватися блоки тіла циклу по каналу 3, до "і" буде добавлений крок переадресації крі відбудеться повернення в блок по каналу 2 для подальшої перевірки .

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

При обробці елементів одновимірних масивів потрібно користуватися таким типовим фрагментом алгоритму (рис. 5):

Рисунок 5 – Типова блок-схема обробки елементів одновимірного масиву

Як правило, в нескладних алгоритмах блок “Використання результату” реалізується виведенням результату на екран дисплея або на принтер.

Дії блоку “Підготовчі операції” залежать від типу задачі і наведені в таблиці 2.

Таблиця 2

Тип

Підготовчі операції

Дії

1

Знаходження суми

S=0

2

Знаходження добутку

D=1

3

Підрахунок кількості

K=0

4

Знаходження елемента

t=a1

5

Знаходження рівня елемента

t=a1; r=1

Приклад. Знайти в одновимірному масиві довжиною n елементів рівень найбільшого по модулю елемента.

Це задача 5-го типу. Тому вважаючи, що масив уже знаходиться в оперативній пам’яті маємо блок-схему представлену на рисунку 6.

Рисунок 6 – Знаходження рівня найбільшого по модулю

Соседние файлы в папке Студентам заочникам ФЕФ