7.1. Стадії рішення завдань на комп'ютері
Рішення завдань комп'ютером включає наступні основні стадії, частина, з якої, здійснюється без участі комп'ютера.
Постановка задачі:
збір інформації про задачі;
формулювання умови задачі;
визначення кінцевої мети рішення задачі;
визначення форми видачі результатів;
опис даних (їх типів, діапазонів величин, структури і тому подібне ).
Аналіз і дослідження задачі, моделі:
аналіз існуючих аналогів;
аналіз технічних і програмних засобів;
розробка математичної моделі;
розробка структур даних.
Розробка алгоритму:
вибір методу проектування алгоритму;
вибір форми запису алгоритму (блок-схеми, псевдокод і ін.);
вибір тестів і методу тестування;
проектування алгоритму.
Програмування:
вибір мови програмування;
уточнення способів організації даних;
запис алгоритму на вибраній мові програмування.
Тестування і відладка:
синтаксична відладка;
відладка семантики і логічної структури;
тестові розрахунки і аналіз результатів тестування;
вдосконалення програми.
Аналіз результатів рішення задачі і уточнення у разі потреби математичної моделі з повторним виконанням етапів 2 — 5.
Супровід програми:
доопрацювання програми для вирішення конкретних завдань;
складання документації до вирішеного завдання, до математичної моделі, до алгоритму, до програми, до набору тестів, до використання.
Математична модель — це система математичних співвідношень — формул, рівнянь, нерівностей і так далі, що відображають істотні властивості об'єкту або явища.
Щоб описати явище, необхідно виявити найістотніші його властивості, закономірності, внутрішні зв'язки, роль окремих характеристик явища. Виділивши найбільш важливі чинники, можна нехтувати менш істотними.
Звичайно, результати обчислювального експерименту можуть опинитися і не відповідними дійсності, якщо в моделі не будуть враховані якісь важливі сторони дійсності.
Отже, створюючи математичну модель для вирішення завдання, потрібно:
виділити припущення, на яких грунтуватиметься математична модель;
визначити, що вважати за початкові дані і результати;
записати математичні співвідношення, що пов'язують результати з початковими даними.
Відладка програми — це процес пошуку і усунення помилок в програмі, вироблюваний за наслідками її прогону на комп'ютері.
Англійський термін debugging ("відладка") буквально означає "вилов жучків". Термін з'явився в 1945 р., коли один з перших комп'ютерів — "Марк-1" припинив роботу через те, що в його електричні ланцюги потрапив метелик і заблокував своїми останками одна з тисяч реле машини.
У сучасних програмних системах відладка здійснюється часто з використанням спеціальних програмних засобів, званих відладчиками. Ці засоби дозволяють досліджувати внутрішню поведінку програми.
Программа-отладчик зазвичай забезпечує наступні можливості:
покрокового виконання програми із зупинкою після кожної команди (оператора);
проглядання поточного значення будь-якою змінною або знаходження значення будь-якого виразу, зокрема, з використанням стандартних функцій; при необхідності можна встановити нове значення змінної;
установку в програмі "Контрольних крапок", тобто крапок, в яких програма тимчасово припиняє своє виконання, так що можна оцінити проміжні результати, і ін.
При відладці програм важливо пам'ятати наступне:
на початку процесу відладки треба використовувати прості тестові дані;
виникаючі утруднення слід чітко розділяти і усувати строго по черзі;
не потрібно вважати за причину помилок машину, оскільки сучасні машини і транслятори володіють надзвичайно високою надійністю.
Тестування (англ. test — випробування) — це випробування, перевірка правильності роботи програми в цілому, або її складових частин.
Як би не була ретельно відладжена програма, вирішальним етапом, що встановлює її придатність для роботи, є контроль програми за наслідками її виконання на системі тестів. Програму умовно можна вважати за правильну, якщо її запуск для вибраної системи тестових початкових даних у всіх випадках дає правильні результати.Але, як справедливо указував відомий теоретик програмування Е. Дейкстра, тестування може показати лише наявність помилок, але не їх відсутність. Нерідкі випадки, коли нові вхідні дані викликають "відмову" або отримання невірних результатів роботи програми, яка вважалася за повністю відладжену.
Для реалізації методу тестів мають бути виготовлені або заздалегідь відомі еталонні результати.
Тестові дані повинні забезпечити перевірку всіх можливих умов виникнення помилок:
має бути випробувана кожна гілка алгоритму;
черговий тестовий прогін повинен контролювати щось таке, що ще не було перевірене на попередніх прогонах;
перший тест має бути максимально простий, щоб перевірити, чи працює програма взагалі;
арифметичні операції в тестах повинні гранично спрощуватися для зменшення об'єму обчислень;
кількості елементів послідовностей, точність для ітераційних обчислень, кількість проходів циклу в тестових прикладах повинні задаватися з міркувань скорочення об'єму обчислень;
мінімізація обчислень не повинна знижувати надійності контролю;
тестування має бути цілеспрямованим і систематизованим, оскільки випадковий вибір початкових даних привів би до труднощів у визначенні ручним способом очікуваних результатів; крім того, при випадковому виборі тестових даних можуть виявитися неперевіреними багато ситуацій;
ускладнення тестових даних повинне відбуватися поступово.
Приклад. Система тестів для завдання знаходження коріння квадратного рівняння ax2 + bx + з = 0 :
Випадок, що перевіряється | Коефіцієнти | Результати | ||
a | b | c | ||
d >0 | 1 | 1 | -2 | x1 = 1, x2 = - 2 |
d=0 | 1 | 2 | 1 | Коренірівні: x1 = - 1, x2 = - 1 |
d <0 | 2 | 1 | 2 | Дійснихкоренівнема |
a=0, b=0, c=0 | 0 | 0 | 0 | Всікоефіцієнтирівнінулю. х — будь-яке число. |
a=0, b=0, c<>0 | 0 | 0 | 2 | Невірне рівняння |
a=0, b<>0 | 0 | 2 | 1 | Лінійне рівняння. Один корінь: x = - 0,5 |
a <>0, b <>0, с = 0 | 2 | 1 | 0 | x1 = 0, x2 = - 0,5 |
Відладка і тестування — це два різних і несхожих один на одного етапи:
при відладці відбувається локалізація і усунення синтаксичних помилок і явних помилок кодування;
у процесі ж тестування перевіряється працездатність програми, що не містить явних помилок.
Тестування встановлює факт наявності помилок, а відладка з'ясовує її причину.
- Іі. Електронні обчислювальні машини (еом)
- 2.1. Класифікація еом за розміром
- 2.2. Класифікація персональних еом
- 2.3. Класифікація пк за сферою застосування
- Ііі. Персональні комп’ютери. Особливості їх складу, конструкції і конфігурації.
- Питання для самоперевірки
- 1.3 Призначення, конструкція і характеристики пристроїв персональних комп’ютерів: системний блок, блок живлення, мікропроцесор, материнська плата, оперативна пам’ять
- Питання для самоперевірки
- 1.4 Призначення, конструкція і характеристики пристроїв персональних комп’ютерів: накопичувачі, адаптери
- 1.5 Призначення, конструкція і характеристики пристроїв персональних комп’ютерів: звукові карти, монітор, клавіатура
- 1.6 Призначення, конструкція і характеристики пристроїв персональних комп’ютерів: принтер, модеми, сканери, джерела безперебійного живлення
- Artec viewstation as6e
- Artec viewstation at12 scsi
- Artec viewscan a2000d
- Boeder compact colour 1200 (65137)
- 2. Операційна система windows xp. Основні поняття на принципи роботи у системі.
- 2.1 Історія Windows
- 2.2 Файлова система та структура.
- Запитання для контролю.
- 2.3 Основні принципи роботи з системою
- 2.4 Робота з файлами та папками.
- Переміщення та копіювання папок та файлів
- Пошук файлів та папок
- Приклад контрольного завдання за темою Основи роботи в ос Windows xp
- 3. Введение в microsoft office.
- 3.1 Microsoft word.
- 3.1.1 Запуск і ознайомлення з пакетом
- 3.1.1.1 Введення в Microsoft Word.
- 3.1.1.2 Меню і панелі інструментів Word.
- 3.1.1.4 Початок роботи з документом.
- 3.1.2. Налаштування параметрів сторінки
- 3.1.2.1 Завдання режиму сторінки
- 3.1.2.2Налаштування масштабу документа
- 3.1.2.3 Попередній перегляд файлу
- 3.1.2.4. Друк документа
- 3.1.2.5. Установка параметрів сторінки
- 3.1.2.6 Додавання колонтитулів
- 3.1.3. Набір і редагування тексту. Шрифт.
- 3.1.3.1 Налаштування шрифтів
- 3.1.3.2 Робота з шрифтами
- 3.1.3.3 Вставка символу в документ
- 3.1.3.4. Виділення фрагмента тексту
- 3.1.4. Набір і редагування тексту. Абзац.
- 3.1.4.1. Завдання вирівнювання і інтервалів
- 3.1.4.2. Завдання відступів
- 3.1.4.3. Оформлення тексту в декілька колонок
- 3.1.4.4. Створення списків
- 3.1.4.5. Вставка розриву сторінки або розділу
- 3.1.4.6. Відміна і повторення виконаних дій.
- 3.1.4.7. Копіювання і переміщення інформації.
- 3.1.5. Вставка об'єктів.
- 3.1.5.1 Створення простих формул
- 3.1.5.2. Запис формул за допомогою редактора формул
- 3.1.5.3. Вставка об'єктів Wordart.
- 3.1.5.4. Робота з ClipArt
- 3.1.5.5. Створення графічних об'єктів.
- 3.1.6. Робота з таблицями.
- 3.1.6.1 Створення таблиці.
- 3.1.6.2 Основні комбінації клавіш для роботи з таблицями.
- 3.1.6.3 Зміна таблиці.
- 3.1.6.4 Форматування таблиці
- 3.1.6.5. Написання формул і побудова діаграм.
- 3.2 Текстовий редактор Open Office org Writer
- 3.2.1 Робота з документами
- Комбінації клавіш для переміщення в межах тексту
- Питання для самоперевірки
- 3.2.2 Форматування тексту
- 3.2.3 Створення таблиць та діаграм
- 3.2.4 Вставка об’єктів у документ
- Питання для самоперевірки
- 3.2.5 Призначення стилів і їх використання в документах
- Питання для самоперевірки
- 3.2.6 Засоби підготовки і представлення презентацій
- 4. Електронні таблиці (ms Excel та oo Calc)
- 4.1.Загальні положення
- 4.2.Типи даних, введення та форматування даних у ет
- 4.3. Редагування даних в ет
- 4.4. Функції та обчислення у ет
- 4.5. Організація графічної інформації
- 4.6. Робота з базами даних (списками)
- 4.7. Аналіз даних
- 5. Загальні поняття баз даних.
- 5.1 Бази даних
- 5.1.1 Поняття бази даних і субд
- 5.1.2 Ієрархічна модель даних
- 5.1.3 Мережева модель даних
- 5.1.4 Реляційна модель даних
- 5.1.5 Рівні моделі даних.
- 5.2. Інфологичеська модель даних "суть-зв'язок"
- 5.2.1 Поняття, використовувані в інфологичному моделюванні.
- 5.2.2 Основні класи суті.
- 5.2.3 Er- діаграми і мова інфологичеського моделювання (яім)
- 5.2.4 Види зв'язків
- 5.3. Реляційна база даних
- 5.3.1 Основні поняття, використовувані в реляційних базах даних
- 5.3.2 Правила побудови реляційних баз даних
- 5.3.3 Поняття універсального відношення
- 5.3.4 Нормалізація
- 5.3.5 Процедура проектування
- 5.4. Microsoft Access. Создание таблиц
- 5.4.1ЗапускпрограммыMicrosoft Access
- 5.4.2 Створення таблиць
- 5.4.2.1 Режим таблиць
- 5.4.2.2 Режим конструктора
- 5.4.2.3 Майстер таблиць
- 5.4.3. Види представлення таблиці
- 5.4.4. Редагування проекту таблиці
- 5.5. Визначення зв'язків між таблицями
- 5.6. Створення запитів
- 5.6.1 Створення запитів в режимі конструктора
- 5.6.2 Приклади запитів
- 5.6.3 Створення запитів в режимі sql
- 5.6.4 Інструкції sql
- 5.7. Access. Створення форм
- 5.7.1 Майстер форм.
- 5.7.2 Режим Конструктора
- 5.7.3 Заповнення Форми в режимі конструктора
- 5.7.4 Виклик однієї форми з іншої
- 5.7.5 Додавання в Примітку форми поточної дати і час
- 5.8. Access. Створення звітів
- 5.8.1 Кроки створення звіту в режимі Майстра звітів
- 5.8.2 Створення звітів в режимі Конструктора
- 6. Комп'ютерні мережі
- 6.1. Введене
- 6.2. Класифікації мереж
- 6.2.1. Класифікація за розміром охопленої території :
- 6.2.2. Класифікація за типом функціональної взаємодії
- 6.2.3. Класифікація за типом мережевої топології.
- 6.3. Огляд мережевого устаткування.
- 6.3.1 Крайове устаткування лінії зв'язку.
- 6.3.2 Проміжне мережеве устаткування.
- 6.3.3 Комутатор
- 6.3.4 Маршрутизатор
- 6.3.5 Шлюзи
- 6.3.6 Кабельні системи
- 6.3.7 Безпровідні технології
- 6.4.Вимоги, що пред'являються до мереж
- 6.5. Глобальна мережа Internet (інтернет). Www.
- Ip -телефония.
- 7. Основи алгоритмізації і програмування
- 7.1. Стадії рішення завдань на комп'ютері
- 7.2. Алгоритми.
- Команди шкільного ам
- Кін Базові структури алгоритмів.
- Лінійні алгоритми
- Розвилка
- Вкладені цикли
- Приклад вкладених циклів «поки»
- Програмний спосіб запису алгоритмів
- Рівень мови програмування
- Логічні вирази
- Література