29
Розділ1. Комп'ютерне моделювання. Основи алгоритмізації

Компютерне моделювання

Embed Size (px)

Citation preview

Page 1: Компютерне моделювання

Розділ1. Комп'ютерне моделювання. Основи алгоритмізації

Page 2: Компютерне моделювання
Page 3: Компютерне моделювання

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

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

Прямокутником позначають дії, які потрібно виконати.

Дію можна подати у вигляді однієї елементарної дії або у вигляді послідовності логічно об'єднаних дій.

Ромбом позначають перевірку значення логічного виразу, який може набувати одного з двох значень — істинно або хибно. В логічних виразах можуть використовуватися логічні операції І, НЕ, АБО. В такому разі маємо складені логічні вирази. Перевірка значення логічного виразу зводиться до перевірки виконання деякої умови.

22.12.2012 Базові структури алгоритму

Page 4: Компютерне моделювання

Слідування означає, що дії мають виконуватися послідовно, одна за одною.

Структуру слідування схематично зображено на малюнку

Наприклад, будь-який алгоритм можна подати як послідовність р дій

22.12.2012 Базові структури алгоритму

Розгалуження означає виконання однієї з двох

дій залежно від значення деякого логічного

виразу.

Структуру розгалуження схематично зображено на

малюнку

Page 5: Компютерне моделювання

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

22.12.2012 Базові структури алгоритму

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

Page 6: Компютерне моделювання

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

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

22.12.2012 Базові структури алгоритму

Page 7: Компютерне моделювання

Базові структури алгоритму

22.12.2012 7Узагальнюємо поняття алгоритму

Page 8: Компютерне моделювання

У циклі «поки» на першому кроці перевіряється значення логічного виразу. Якщо воно є істинним, то виконується тіло циклу. Потім – на другому кроці – знову перевіряється значення логічного виразу і, якщо воно усе ще є істинним, знову виконується тіло циклу і т.д. Цикл завершується, коли значення логічного виразу стає хибним

Циклічні процеси часто називають ітераційними (від англ. iterate —повторювати), а кожен крок циклу — ітерацією.

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

22.12.2012 Базові структури алгоритму

Page 9: Компютерне моделювання

Цикл «до» має дві відмінності від циклу «поки»:

• значення логічного виразу перевіряється після виконання тіла циклу, тобто тіло циклу”До” буде виконуватися хоча б один раз;

• Цикл “До” повторюється, поки значення логічного виразу є хибним, і завершується, коли воно стає істинним.

1. Якщо в алгоритмі є тільки структура слідування, то такий алгоритм відносять до лінійних алгоритмів

2. Якщо у алгоритмі є базова структура розгалуження, то такий алгоритм прийнято називати алгоритмом з розгалуженням

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

22.12.2012 Базові структури алгоритму

Page 10: Компютерне моделювання

Будь-який алгоритм може бути побудований з використанням трьох базових структур - слідування, розгалуження, повторення

22.12.2012 Базові структури алгоритму

Page 11: Компютерне моделювання

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

Розглянуті принципи конструювання алгоритмів називають принципами структурного програмування.

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

22.12.2012 Базові структури алгоритму

Page 12: Компютерне моделювання

22.12.2012 Базові структури алгоритму

Алгоритм знаходження суми натуральних чисел від 1 до 100.

Page 13: Компютерне моделювання

22.12.2012 Базові структури алгоритму

Уточнення алгоритму знаходження суми натуральних чисел від 1 до 100, в якому блок V2 записано за допомогою базової структури повторення.

Page 14: Компютерне моделювання

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

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

22.12.2012 Базові структури алгоритму

Page 15: Компютерне моделювання

Вправа 3.2.1. Застосування структури розгалуження для подання алгоритму визначення агрегатного стану води при заданій температурі.

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

1. Відкрийте текстовий процесор MS Word. Вставте напис і впишіть у ньомутекст: Визначити агрегатний стан води при заданій температурі.

2. За допомогою вказівки Вставка/Фігури намалюйте стрілки. Вставте ім'я структури S.

3. Зробіть уточнення даної структури. Намалюйте стрілку вниз, потім велике обрамлення вмісту уточнення як напис, який немає кольору заливки. Для цього використайте вказівки контекстного меню напису.

22.12.2012 Базові структури алгоритму

Page 16: Компютерне моделювання

4. Помістіть вказівник мишки всередину напису та намалюйте стрілку вниз. Оберіть аналогічно фігуру ромб (блок Р), додайте до нього напис із текстом Т≥1000. Змініть формат напису: відсутні лінії та заливка. Виділіть дві фігури: ромб та напис. Згрупуйте їх. Аналогічно зобразіть структурну схему алгоритму.

22.12.2012 Базові структури алгоритму

Page 17: Компютерне моделювання

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

22.12.2012 Базові структури алгоритму

Page 18: Компютерне моделювання

Вправа 3.3.2. Формальне виконання алгоритму.

Завдання. Формально виконати алгоритм знаходження суми натуральних чисел від 1 до 5. Результат подати у табличній формі.

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

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

22.12.2012 Базові структури алгоритму

Page 19: Компютерне моделювання

2. Побудуйте таблицю виконання алгоритму.

3. Покроково виконуйте алгоритм та записуйте одержані дані за зразком таблиці.

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

5. За потреби внесіть зміни до алгоритму.

22.12.2012 Базові структури алгоритму

S(змінна величина,

результат)

А (проміжні дані, змінна величина,

значення поточного натурального числа

Умова виходу з циклу

0 1 1>5 – ні

1 2 2>5 - ні

Page 20: Компютерне моделювання

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

Умови бувають простими (записуються знаками відношень >, <, =, <>, >=, <= або реченнями) та складеними (складаються із простих умов та пов'язуються за допомогою логічних операцій І, АБО, НЕ). Якщо вважати, що 1 — це результат перевірки простої умови, що означає «істинно», а 0 — результат простої умови, що означає «хибно», то результати складених умов можна зобразити у таблицях істинності :

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

22.12.2012 Базові структури алгоритму

Page 21: Компютерне моделювання

Які засоби використовують для побудови базових структур алгоритмів?

Для складання графічних схем алгоритмів можна застосовувати різні середовища, зокрема Microsoft Office Visio або The Visual Understanding Environment ( VUE) (http://vue.tufts.edu).

Середовище VUE можна завантажити із сайта, попередньо зареєструвавшись на ньому.

22.12.2012 Базові структури алгоритму

Page 22: Компютерне моделювання

Вікно середовища VUE

Вікно середовища VUE достатньо просте.

Розглянемо основні його компоненти: в центрі вікна — робоче поле, що має назву Empty Map, Панель інструментів.

Для відкривання додаткової панелі налаштування параметрів об'єктів викликають Палітру форматування з меню Вікна, яка містить області Стиль та Форма фігур (9), Колір та Ашіяса 0де (10), Тип та Заливка фігур (10), Тип та Товщина лінії (11), Початок і кінець лінії (12), Блок форматування тексту (13) (тип шрифту, розмір, колір, накреслення, виділення, вирівнювання, списки).

22.12.2012 Базові структури алгоритму

Page 23: Компютерне моделювання

Вікно середовища VUE

22.12.2012 Базові структури алгоритму 23

Page 24: Компютерне моделювання

Панель інструментів вікна середовища VUE

Панель інструментів містить такі інструменти:

Вибір об'єкта (1),

Вузол (2),

Зв'язок (3),

Швидке макетування (4),

інструмент Тексту (5),

Масштабування (6),

Переміщення (7),

Відтворення (8).

22.12.2012 Базові структури алгоритму

Page 25: Компютерне моделювання

Застосування середовища VUE для побудови алгоритмів

В середовищі VUE побудувати алгоритм знаходження в інформаційно-пошуковій системі Міністерства освіти і науки, молоді та спорту України «Вступ» відомостей про сертифікат з найвищою кількістю балів з конкретної спеціальності.

1. Завантажте середовище VUE. Оберіть інструмент Текст, наведіть вказівник мишки у верхню частину робочого поля по центру. Введіть текст Робота з інформаційно-пошуковою системою «Вступ». Відформатуйте текст засобами Палітри форматування.

2. Після встановлення середовище VUE має англомовний інтерфейс. Змінити мову інтерфейсу можна за допомогою вказівки Edit/ Preferences. У лівій частині діалогового вікна Preferences треба перейти до розділу Language та обрати одну з доступних мов інтерфейсу у правій частині. Зміни набувають сили після повторного завантаження середовища.

3. На панелі інструментів оберіть інструмент Вузол. Замість назви Новий вузол введіть назву S. Додайте дві стрілки, які показують, що S є фрагментом алгоритму.

22.12.2012 Базові структури алгоритму

Page 26: Компютерне моделювання

Виконання завдань вправи 3.5.1 в середовищі VUE

4. ДЛЯ ПОБУДОВИ ВКАЗІВКИ НА ПАЛІТРІ ФОРМАТУВАННЯ ОБЕРІТЬ ФІГУРУ ПРЯМОКУТНИК. ДОДАЙТЕ

НОВИЙ ВУЗОЛ ТА ЗАПИШІТЬ У НЬОМУ ТЕКСТ ЗАЙТИ НА САЙТ WWW.VSTUP.INFO.

5. Додайте ще один вузол. Введіть текст Обрати рік. Зв'яжіть обидва вузли за допомогою інструменту Зв’язок. Виконайте додаткові аналогічні дії так, щоб отримати схему :

22.12.2012 Базові структури алгоритму

Page 27: Компютерне моделювання

Виконання завдань вправи 3.5.1 в середовищі VUE

6. На Палітрі форматування змініть форму фігури на Ромб. Додайте Вузол. Зверніть увагу – форма вузла змінилася. Всередині ромба введіть текст умови: Географічне розташування має значення. Текст можна переносити по рядках, натискуючи клавішу Enter, фігура “підлаштується” під текст так, щоб увесь напис був розміщений у фігурі.

7. Далі змініть вузол на Прямокутник. Додайте вузол. Введіть до нього текст Територіальний пошук. Перемістіть його ліворуч (застосуйте інструмент Вибір об'єкта). Зв'яжіть Ромб з останнім Прямокутником, у поле мітки впишіть Істина. Аналогічно, але з правої сторони та міткою Хибно, створіть зв'язаний прямокутник із текстом Пошук за галузями знань. Якщо обрати вигляд лінії зв'язку крива, то отримаєте зображення як на даному малюнку.

22.12.2012 Базові структури алгоритму

Page 28: Компютерне моделювання

Виконання завдань вправи 3.5.1 в середовищі VUE

8. Доповніть створену схему об'єктами, як на даному малюнку справа

9. Доповніть створену схему додатковими об'єктами для знаходження на сайті у розділі Статистика відповідних даних про середній бал сертифіката та порівняйте їх з іншими.

10. Збережіть створену схему з назвою алгоритм.vue, скориставшись відповідною вказівкою з пункту меню Файл.

22.12.2012 Базові структури алгоритму

Page 29: Компютерне моделювання

Читати Розділ 1, §3Відпрацювати навички роботи в середовищі VUEГотувати відповіді на запитання 1-8, ст.40 Виконати завдання для самостійної роботи (ст. 40-41)

22.12.2012 Базові структури алгоритму