METALL - Авторський освітній сайт

Download Report

Transcript METALL - Авторський освітній сайт

Розділ1. Комп'ютерне моделювання. Основи
алгоритмізації
Для опису логічно обумовленого ходу виконання дій під час створення алгоритмів
використовують одні й ті самі елементи, які називають базовими структурами. Всього їх три:
слідування, розгалуження, повторення. За їх допомогою можна скласти будь-який алгоритм.
Для графічного подання базових структур прийняті спеціальні позначення.
Прямокутником позначають дії, які потрібно виконати.
Дію можна подати у вигляді однієї елементарної дії або у вигляді послідовності логічно
об'єднаних дій.
Ромбом позначають перевірку значення логічного виразу, який може набувати одного з двох
значень — істинно або хибно. В логічних виразах можуть використовуватися логічні операції І,
НЕ, АБО. В такому разі маємо складені логічні вирази. Перевірка значення логічного виразу
зводиться до перевірки виконання деякої умови.
20.07.2015
Базові структури алгоритму
Слідування означає, що дії мають виконуватися послідовно, одна за одною.
Структуру слідування схематично зображено на малюнку
Наприклад, будь-який алгоритм можна подати як послідовність р дій
Розгалуження означає виконання однієї з двох
дій залежно від значення деякого логічного
виразу.
Структуру розгалуження схематично зображено на
малюнку
20.07.2015
Базові структури алгоритму
Може трапитись, що при одному із значень логічного виразу не потрібно виконувати жодних
дій. У цьому разі структура розгалуження матиме скорочений вигляд .
Алгоритм знаходження меншого з
двох різних чисел можна подати у
такому вигляді, як на малюнку
20.07.2015
Базові структури алгоритму
Необхідність застосування структури повторення виникає тоді, коли треба
неодноразово виконувати однотипні дії. При цьому кількість таких повторень або
заздалегідь відома, або визначається виконанням чи невиконанням деякої умови.
Наприклад, базова структура повторення використовується при обчисленні значення
за однією і тією самою формулою з різними значеннями змінних.
Алгоритм вивчення вірша напам'ять можна зобразити за допомогою базових
структур алгоритмів так, як показано на малюнку.
20.07.2015
Базові структури алгоритму
Базові структури алгоритму
20.07.2015
Узагальнюємо поняття алгоритму
7
У циклі «поки» на першому кроці перевіряється значення логічного виразу. Якщо
воно є істинним, то виконується тіло циклу. Потім – на другому кроці – знову
перевіряється значення логічного виразу і, якщо воно усе ще є істинним, знову
виконується тіло циклу і т.д. Цикл завершується, коли значення логічного виразу стає
хибним
Циклічні процеси часто називають ітераційними (від англ. iterate —
повторювати), а кожен крок циклу — ітерацією.
Можливі ситуації, коли тіло циклу не виконується жодного разу. Це відбувається
тоді, коли на першому кроці циклу значення логічного виразу є хибним.
20.07.2015
Базові структури алгоритму
Цикл «до» має дві відмінності від
циклу «поки»:
• значення логічного виразу
перевіряється після виконання
тіла циклу, тобто тіло циклу
”До” буде виконуватися хоча б
один раз;
• Цикл “До” повторюється, поки
значення логічного виразу є
хибним, і завершується, коли
воно стає істинним.
20.07.2015
1. Якщо в алгоритмі є тільки
структура слідування, то такий
алгоритм відносять до лінійних
алгоритмів
2. Якщо у алгоритмі є базова
структура розгалуження, то
такий алгоритм прийнято
називати алгоритмом з
розгалуженням
3. Якщо в алгоритмі
використовується базова
структура повторення, то
алгоритм називають
циклічним.
Базові структури алгоритму
Будь-який алгоритм може бути побудований з використанням трьох базових
структур - слідування, розгалуження, повторення
20.07.2015
Базові структури алгоритму
Важливою властивістю розглянутих базових структур
алгоритмів є те, що кожна з них має лише один вхід і вихід. При
конструюванні алгоритму вихід кожної базової структури
під'єднується до входу іншої базової структури. Таким чином,
весь алгоритм являє собою лінійний скінчений набір базових
структур, що слідують одна за одною в певному порядку. Такий
набір, зокрема, може складатися лише з однієї базової
структури.
Розглянуті принципи конструювання алгоритмів називають
принципами структурного програмування.
При застосуванні принципів структурного програмування в
процесі спадаючого поділу задачі на підзадачі отримують добре
структурований алгоритм, який можна читати зверху донизу.
20.07.2015
Базові структури алгоритму
Алгоритм знаходження суми натуральних чисел від 1 до 100.
20.07.2015
Базові структури алгоритму
Уточнення алгоритму знаходження суми натуральних чисел від 1 до 100, в якому
блок V2 записано за допомогою базової структури повторення.
20.07.2015
Базові структури алгоритму
Структурний підхід передбачає розбиття задачі на підзадачі, які, у свою чергу
можна розбити ще на підзадачі тощо. Розв'язавши задачу нижчого рівня, можна
перейти до розв'язування задач вищого рівня. Такий підхід називається
проектуванням «знизу вверх». Його переваги полягають у тому, що для задач
вищого рівня використовують уже відомі алгоритми розв'язування підзадач, тобто
ті, які відомі виконавцеві. Недолік цього підходу полягає в тому, що будь-які зміни
на вищому рівні, які виникають у процесі розв'язування, можуть викликати
необхідність у змінах на нижчому рівні, тобто внесення виправлень до вже
розв'язаних задач.
Існує інший підхід «збирання» вихідної задачі з підзадач «зверху вниз».
Спочатку будується розв'язок задачі верхнього (батьківського) рівня, при цьому
підзадачі, що використовуються, подаються у вигляді «чорних ящиків» з чітко
обумовленими вхідними даними та результатами. Розв'язування цих підзадач
переноситься на пізніші етапи проектування. При цьому ліквідується недолік
підходу «знизу вверх». На практиці ці підходи часто комбінуються, виконуючи
проектування «зверху вниз» та «знизу вверх» одночасно.
20.07.2015
Базові структури алгоритму
Вправа 3.2.1. Застосування структури розгалуження для подання алгоритму
визначення агрегатного стану води при заданій температурі.
Завдання. Скласти алгоритм визначення агрегатного стану води при заданій
температурі. Для побудови графічного опису алгоритму використати засоби
вбудованого графічного редактора текстового процесора.
1. Відкрийте текстовий процесор MS Word. Вставте напис і впишіть у ньому
текст: Визначити агрегатний стан води при заданій температурі.
2. За допомогою вказівки Вставка/Фігури намалюйте стрілки. Вставте ім'я структури S.
3. Зробіть уточнення даної структури. Намалюйте стрілку вниз, потім велике
обрамлення вмісту уточнення як напис, який немає кольору заливки. Для цього
використайте вказівки контекстного меню напису.
20.07.2015
Базові структури алгоритму
4. Помістіть вказівник мишки всередину напису та намалюйте стрілку вниз. Оберіть
аналогічно фігуру ромб (блок Р), додайте до нього напис із текстом Т≥1000. Змініть
формат напису: відсутні лінії та заливка. Виділіть дві фігури: ромб та напис. Згрупуйте
їх. Аналогічно зобразіть структурну схему алгоритму.
20.07.2015
Базові структури алгоритму
Правильність побудови алгоритму, або перевірка
моделі на адекватність, не залежить від методу, який
застосовувався при його створенні. Разом з тим,
формальне виконання алгоритму може допомогти у
виправленні можливих помилок при розв'язуванні
задачі за допомогою комп'ютера до побудови
комп'ютерної моделі.
20.07.2015
Базові структури алгоритму
Вправа 3.3.2. Формальне виконання алгоритму.
Завдання. Формально виконати алгоритм знаходження суми натуральних чисел від 1
до 5. Результат подати у табличній формі.
1. Проаналізуємо алгоритм, поданий на малюнку з точки зору розвязування
поставленої задачі. Внесіть необхідні зміни – в даному випадку слід замінити 100
на 5.
Щоб даний алгоритм задовольняв властивість масовості, тобто базові структури
алгоритмів використовувались при обчисленні значення за однією і тією самою
формулою з різними значеннями змінних потрібно в умові задачі замінити число 100
на змінну величину N, значення якої потрібно буде вводити як вхідне.
20.07.2015
Базові структури алгоритму
2. Побудуйте таблицю виконання алгоритму.
S
(змінна величина,
результат)
А
(проміжні дані, змінна величина,
значення поточного натурального числа
Умова виходу з
циклу
0
1
1>5 – ні
1
2
2>5 - ні
3. Покроково виконуйте алгоритм та записуйте одержані дані за зразком таблиці.
4. Перевірте правильність виконання алгоритму. Для цього обчисліть значення суми
потрібних чисел усно чи на папері; порівняйте значення S, яке ви одержали в
результаті формального виконання алгоритму, із шуканим.
5. За потреби внесіть зміни до алгоритму.
20.07.2015
Базові структури алгоритму
Для того щоб застосувати структуру розгалуження, потрібно визначити в алгоритмі
умову його виконання та дії (дію), які (яка) мають виконуватись при виконанні чи
невиконанні умови.
Умови бувають простими (записуються знаками відношень >, <, =, <>, >=, <= або
реченнями) та складеними (складаються із простих умов та пов'язуються за
допомогою логічних операцій І, АБО, НЕ). Якщо вважати, що 1 — це результат
перевірки простої умови, що означає «істинно», а 0 — результат простої умови, що
означає «хибно», то результати складених умов можна зобразити у таблицях
істинності :
У таблицях істинності відображаються результати застосування логічних операцій
{диз'юнкції — логічного додавання, кон'юнкції — логічного множення та інверсії —
логічного заперечення) над висловлюваннями, які в свою чергу є елементами
алгебри логіки.
20.07.2015
Базові структури алгоритму
Які засоби використовують для побудови
базових структур алгоритмів?
Для складання графічних схем алгоритмів можна застосовувати різні середовища,
зокрема Microsoft Office Visio або The Visual Understanding Environment ( VUE)
(http://vue.tufts.edu).
Середовище VUE можна завантажити із сайта, попередньо зареєструвавшись на
ньому.
20.07.2015
Базові структури алгоритму
Вікно середовища VUE
Вікно середовища VUE достатньо просте.
Розглянемо основні його компоненти: в центрі вікна — робоче поле, що має назву
Empty Map, Панель інструментів.
Для відкривання додаткової панелі налаштування параметрів об'єктів викликають
Палітру форматування з меню Вікна, яка містить області Стиль та Форма фігур (9),
Колір та Ашіяса 0де (10), Тип та Заливка фігур (10), Тип та Товщина лінії (11), Початок і
кінець лінії (12), Блок форматування тексту (13) (тип шрифту, розмір, колір,
накреслення, виділення, вирівнювання, списки).
20.07.2015
Базові структури алгоритму
Вікно середовища VUE
20.07.2015
Базові структури алгоритму
23
Панель інструментів вікна середовища VUE
Панель інструментів містить такі інструменти:
Вибір об'єкта (1),
Вузол (2),
Зв'язок (3),
Швидке макетування (4),
інструмент Тексту (5),
Масштабування (6),
Переміщення (7),
Відтворення (8).
20.07.2015
Базові структури алгоритму
Застосування середовища VUE
для побудови алгоритмів
В середовищі VUE побудувати алгоритм знаходження в інформаційно-пошуковій системі
Міністерства освіти і науки, молоді та спорту України «Вступ» відомостей про сертифікат з
найвищою кількістю балів з конкретної спеціальності.
1. Завантажте середовище VUE. Оберіть інструмент Текст, наведіть вказівник мишки у верхню
частину робочого поля по центру. Введіть текст Робота з інформаційно-пошуковою системою
«Вступ». Відформатуйте текст засобами Палітри форматування.
2. Після встановлення середовище VUE має англомовний інтерфейс. Змінити мову інтерфейсу
можна за допомогою вказівки Edit/ Preferences. У лівій частині діалогового вікна Preferences треба
перейти до розділу Language та обрати одну з доступних мов інтерфейсу у правій частині. Зміни
набувають сили після повторного завантаження середовища.
3. На панелі інструментів оберіть інструмент Вузол. Замість назви Новий вузол введіть назву S.
Додайте дві стрілки, які показують, що S є фрагментом алгоритму.
20.07.2015
Базові структури алгоритму
Виконання завдань
вправи 3.5.1 в середовищі VUE
4. ДЛЯ ПОБУДОВИ ВКАЗІВКИ НА ПАЛІТРІ ФОРМАТУВАННЯ ОБЕРІТЬ ФІГУРУ ПРЯМОКУТНИК. ДОДАЙТЕ
НОВИЙ ВУЗОЛ ТА ЗАПИШІТЬ У НЬОМУ ТЕКСТ ЗАЙТИ НА САЙТ WWW.VSTUP.INFO.
5. Додайте ще один вузол. Введіть текст Обрати рік. Зв'яжіть обидва вузли за
допомогою інструменту Зв’язок. Виконайте додаткові аналогічні дії так, щоб
отримати схему :
20.07.2015
Базові структури алгоритму
Виконання завдань
вправи 3.5.1 в середовищі VUE
6. На Палітрі форматування змініть форму фігури на
Ромб. Додайте Вузол. Зверніть увагу – форма вузла
змінилася. Всередині ромба введіть текст умови:
Географічне розташування має значення. Текст
можна переносити по рядках, натискуючи клавішу
Enter, фігура “підлаштується” під текст так, щоб увесь
напис був розміщений у фігурі.
7. Далі змініть вузол на Прямокутник. Додайте вузол.
Введіть до нього текст Територіальний пошук.
Перемістіть його ліворуч (застосуйте інструмент
Вибір об'єкта). Зв'яжіть Ромб з останнім
Прямокутником, у поле мітки впишіть Істина.
Аналогічно, але з правої сторони та міткою Хибно,
створіть зв'язаний прямокутник із текстом Пошук за
галузями знань. Якщо обрати вигляд лінії зв'язку
крива, то отримаєте зображення як на даному
малюнку.
20.07.2015
Базові структури алгоритму
Виконання завдань
вправи 3.5.1 в середовищі VUE
8. Доповніть створену схему об'єктами, як
на даному малюнку справа
9. Доповніть створену схему додатковими
об'єктами для знаходження на сайті у
розділі Статистика відповідних даних про
середній бал сертифіката та порівняйте їх
з іншими.
10. Збережіть створену схему з назвою
алгоритм.vue, скориставшись
відповідною вказівкою з пункту меню
Файл.
20.07.2015
Базові структури алгоритму
Читати Розділ 1, §3
Відпрацювати навички роботи в середовищі VUE
Готувати відповіді на запитання 1-8, ст.40
Виконати завдання для самостійної роботи (ст. 40-41)
20.07.2015
Базові структури алгоритму