220 likes | 570 Views
Тема 2. Моделі та моделювання. Поняття моделі та моделювання. Класифікація моделей. Інформаційна модель. Математична модель як різновид інформаційної моделі. Етапи розв'язування задач на комп'ютері. 2. Практична робота “Побудова інформаційної та математичної моделі”.
E N D
Поняття моделі та моделювання. Класифікація моделей. Інформаційна модель. Математична модель як різновид інформаційної моделі. Етапи розв'язування задач на комп'ютері.2. Практична робота “Побудова інформаційної та математичної моделі” План вивчення теми 2
Поняття інформаційної моделі Поняття об'єкта Властивості об'єкта Об'єкт моделювання – це частина світу, що нас оточує, окремий процес або явище, які можуть розглядатися як єдине ціле. Властивості об'єкта – риси, ознаки об'єкта, за якими його можна відрізнити від решти об'єктів. Автомобілі “Нива”
Поняття об'єкта Клас Параметри об'єкта Клас – група об'єктів з однаковим набором властивостей. Об'єкти зазвичай класифікують за загальними ознаками або загальними діями. Параметри об'єкта – це властивості об'єкта, які можуть бути виражені певними (кількісними або якісними) значеннями. Кількісні параметри об'єкту “автомобіль” – швидкість Якісні параметри - колір Клас об'єктів “Птахи” (за загальними ознаками):
Поняття моделі Модель Моделювання Модель – це штучно створений людиною абстрактний або матеріальний образ реального об'єкта, що зберігає типові властивості оригіналу, важливі для розв'язання даної задачі. Моделювання – процес створення, аналізу та уточнення моделі для подальшого дослідження об'єкта моделювання. Моделі створюють для того, щоб краще розуміти структуру, основні властивості, закони взаємодії складових об'єкта дослідження, навчитися керувати цим об'єктом та прогнозувати наслідки керування.
Причини моделювання • Оригінал не існує в реальному світі • Реальний об'єкт не доступний для дослідження • Немає можливості побачити об'єкт • Процес, який досліджується, небезпечний для життя тощо.
Класифікація моделей Моделі класифікуються за такими найбільш суттєвими властивостями:
Поняттяінформаційноїмоделі Розв’язання прикладної задачі вимагає створення моделі, яка описує реальні об’єкти та відносини між ними в межах даної задачі. Для досліджень об’єкта (явища, процесу) не обов’язково створювати матеріальну модель, часто досить надати необхідну інформацію про об’єкт у потрібній формі, тобто створити інформаційну модель. Інформаційна модель — це абстрактний об’єкт, який замінює об’єкт оригінальний із метою його дослідження, зберігаючи при цьому типові риси та властивості оригіналу, важливі для дослідження. При створенні моделі треба визначити основні характеристики об’єкта та допустиму погрішність цих характеристик, вхідні характеристики, взаємовідносини характеристик. Від поставленої задачі залежить повнота розробки та аналізу моделі. Інформаційна модель може бути описана різними засобами: природною мовою, мовою математики, хімії, біології, мовою графічних структур тощо.
Класифікація інформаційних моделей
Опис інформаційної моделі • Математична модель • Модель реалізована засобами математики Опис інформаційної моделі здійснюється природними мовами, мовами математики, хімії, біології, мовою графічних структур, мовами програмування, іншими способами. За інструментами реалізації інформаційні моделі поділяють на комп'ютерні й некомп'ютерні.
Основні етапи розв’язання прикладних задач із використанням комп’ютера Розв’язання задач із використанням комп’ютера характеризується декількома етапами, частина з яких виконуються безпосередньо людиною, решта — людиною і машиною.
Етапи підготовки задач до розв'язування на комп’ютері Отже, підготовка задач до розв'язування на комп’ютері здійснюється в кілька етапів. Треба зауважити, що окремі етапи взаємопов’язані: наступні етапи залежать від реалізації попередніх, а після виконання чергового етапу може виникнути потреба повернення до попереднього етапу і пошуку нового методу розв’язування. Етапи підготовки задачі до розв'язування на комп’ютері: • постановка задачі; • математична формалізація задачі; • вибір методу розв'язування задачі; • розробка блок-схеми алгоритму; • перевірка алгоритму; • написання тексту програми; • налагодження і тестування програми; • розв'язування задачі, аналіз результатів; • експлуатація програми.
Етапи підготовки задач до розв'язування на комп’ютері Постановка задачі — це чітке формулювання задачі, визначення вхідних даних для її розв'язування і точні вказівки відносно того, які результати і в якому вигляді повинні бути отримані. Постановку задачі виконує фахівець з тих питань, для вирішення яких розробляється програма. Наприклад, постановку задачі для продажу квитків на вокзалі за допомогою комп'ютера повинен робити спеціаліст, який розуміється на цій справі. Постановку задачі для тестування учнів на комп'ютері робить учитель. Для автоматизації банківських операцій постановку задачі робить фінансовий працівник. При постановці задачі потрібно вказати, які вхідні дані будуть оброблятись, що з ними необхідно зробити і в якому вигляді повинні бути видані результати. Приклад постановки задачі: «Розв'язати квадратне рівняння ах2 + bх +с= 0, де а, b, с — дійсні числа (а≠0). Вказати всі варіанти розв'язання: два різні корені; два рівні корені; немає розв'язку». Математична формалізація задачі — це опис задачі у вигляді формул, рівнянь, співвідношень, обмежень. Деякі задачі, які розв'язують на комп'ютері, не потребують математичної формалізації (наприклад, задачі обробки текстів). Формалізуємо задачу про розв'язання квадратного рівняння
Про вибір методу розв'язання задачі Вибір методу полягає у виборі того чи іншого способу розв'язування задачі. Вибір методу розв'язування задачі залежить як від самої задачі, так і від можливостей комп’ютера: швидкодії, об'єму пам'яті, наявності розроблених раніше програм. Побудова блок-схеми — це графічний запис алгоритму на основі вибраного методу. При побудові алгоритму бажано розглянути і проаналізувати кілька варіантів перед тим, як зробити остаточний вибір. Алгоритм більшою мірою визначається методом, хоч один і той же метод, у свою чергу, може бути реалізований за допомогою різних алгоритмів. Перевірка алгоритму, як правило, полягає в ручній перевірці («прокрутці») окремих розв'язків задачі.
Ручна перевірка («прокрутка») окремих розв'язків задачі Для цього потрібні аркуш паперу з зображеним на ньому алгоритмом. У клітинках записуються під їх позначеннями всі змінні і їх початкові значення. Поступово рухаючись за алгоритмом, виконуємо записані в ньому операції, проміжні результати записуємо у відповідні колонки. І так до закінчення алгоритму та одержання результатів розв'язування задачі. Дані треба підбирати так, щоб перевірити всі розгалуження алгоритму. Якщо отримані результати відповідають дійсності, можна сподіватись, що алгоритм правильний. Але це можна встановити остаточно лише налагодивши і протестувавши програму.
Програма Написання тексту програми — це запис алгоритму на алгоритмічній мові програмування. Алгоритмічна мова програмування — це сукупність символів, слів, команд і правил, за допомогою яких можна у формальному вигляді записувати послідовність дій для розв'язування даної задачі. Цю послідовність дій називають програмою на алгоритмічній мові. Якщо блок-схема алгоритму достатньо деталізована, то при написанні тексту програми принципових труднощів не виникає. У комп'ютерах завдання перетворення програм на алгоритмічних мовах у машинні коди виконують спеціальні програми, які називаються трансляторами. Людина пише програму на алгоритмічній мові, зрозумілій людині, а транслятор цю програму перетворює в машинну програму, зрозумілу комп'ютеру. Таким чином, алгоритмічна мова відіграє роль посередника між людиною і комп'ютером.
Налагодження і тестування програми Налагодження і тестування програми — це перевірка правильності роботи програми і виправлення знайдених помилок. У програмі, складеній вперше, як правило, містяться помилки. Помилки можуть бути синтаксичні і логічні. Якщо при записі програми допущені синтаксичні помилки (порушені правила запису команд і даних), то такі помилки знайде транслятор. Логічні помилки у виборі формул, розгалужень, логічних висновків тощо трансляторами не виявляються. Ці помилки повинен знайти та усунути програміст. Для виконання тестування необхідно підготувати тести. Тест — це спеціально підібрані вхідні дані разом з результатами, які повинні бути отримані за цими даними. При тестуванні перевіряється чи отримуються програмою ті самі результати, які вказано в тесті. Розв'язування задачі та аналіз результатів — це остаточна перевірка правильності реалізації всіх попередніх етапів.
Налагодження і тестування програми Після налагодження програми здійснюється перевірка її роботи при різних вхідних даних. Цей етап є підсумком виконання всіх попередніх етапів і служить підтвердженням (або запереченням) їх правильності. Після цього етапу інколи доводиться переглянути сам підхід до розв'язування задачі та повернутися до першого етапу для повторного виконання всіх етапів з оглядом на набутий досвід. Упевнившись, що в заданому діапазоні вхідних даних програма функціонує правильно, програміст передає розроблену ним програму для експлуатації. Експлуатація програми — це використання програми замовниками або користувачами. Налагоджена програма з відповідною документацією на неї (опис програми, інструкція по експлуатації і т.д.) передається замовнику для подальшого використання. Програміст здійснює авторський контроль за програмою, тому що під час експлуатації можуть бути виявлені помилки, які не вдалось знайти під час тестування і налагодження. Програміст робить необхідні доробки у програмі, і її експлуатація продовжується.
Приклад 1 Вхідні дані: х – будь-яке дійсне число, що не перетворює знаменники виразу на 0. Таким чином, х0, х4. Пояснити, які значення вхідних даних не допустимі для обчислення виразу
Приклад 2 Знайти площу футбольного поля. Етап 1. Постановка задачі. Вхідні дані: довжини сторін поля – додатні числа. Вихідні дані – площа поля – додатне число. Етап 2. Побудова інформаційної моделі. Для розв'язування даної задачі достатньо вважати поле прямокутником із заданими сторонами a і b (a>0, b>o). Площа прямокутника S=ab (S>0). Етап 3. Розробка алгоритму та його комп'ютерна реалізація. Розроблений алгоритм можна реалізувати на комп'ютері за допомогою наявного програмного забезпечення (наприклад, програми MS Excel) або розробити програму на певній мові програмування (наприклад Pascal, C#). Етап 4. Аналіз результатів.
Приклад 2 (реалізація алгоритму) • Ввести довжину сторін a і b футбольного поля. • Обчислити площу поля S за формулою S=ab • Вивести результат.