- •Інформатика
- •1. Складання алгоритмів
- •1.1. Визначення алгоритму
- •Алгоритм повинен бути:
- •1.2. Алгоритми на природній мові
- •1.3 Алгоритми лiнійної структури
- •1.4 Алгоритми розгалуженої структури
- •1.5 Алгоритм циклічної структури
- •1.6 Комбіновані алгоритми
- •1.7 Схематичне зображення алгоритмів
- •Опис символів
- •2 Алгоритмічна мова qbasic
- •2.1 Інструментарій
- •2.2 Система меню
- •Поле опцій
- •Перемикачі
- •Поле вводу
- •Блок контролю
- •Поле списків
- •2.3 Редактор
- •Маркіровка тексту
- •Обробка тексту
- •2.4 Збереження і завантаження програм
- •Збереження
- •Збереження з іншим іменем
- •Завантаження програми
- •2.5 Складання нової програми
- •2.6 Друк програми
- •2.7 Пошук та зміна тексту
- •Пошук тексту
- •Багаторазовий пошук
- •Зміна тексту
- •2.8 Робота з кількома вікнами
- •2.10.1 Елементарні конструкції мови qbasic
- •Символи
- •2.10.2 Чисельні та символьні дані
- •2.10.3 Стандартні функції
- •2.10.4 Вирази
- •2.10.5 Операції та їх приорітет
- •Логiчні операцiї
- •2.11 Оператори мови qbasic
- •2.11.1 Оператор присвоєння
- •2.11.2 Оператор swap
- •2.11.3 Оператори введення-виведення Оператори введення read, data, restore
- •Оператор введення input
- •Оператор виведення print. Функції spc, tab
- •Оператор виведення print using
- •2.11.4 Оператори керування
- •Оператор goto
- •Оператор on…goto
- •Оператори stop і cont
- •Оператори if… then… else
- •Блок умовного переходу в програмі
- •Оператори gosub і return
- •Оператор on...Gosub
- •Цикл while
- •Цикл do
- •Оператор вибору select case
- •2.11.5 Графiчнi оператори Оператор view
- •Оператор screen
- •Оператор circle
- •Оператор window
- •Оператор line
- •Оператор draw
- •Оператор preset, pset
- •Оператор locate
- •2.11.6 Функції і процедури, визначенні користувачем
- •Функції-вираз
- •Власні функції
- •Власні процедури
- •2.11.7 Масиви Оператори option base, dim, erase
- •Встановлення кольорів екрана
- •2.11.9 Робота з файлами
- •2.11.10 Функція eof
- •Перелік посилань
1.7 Схематичне зображення алгоритмів
Запис на природній мові для складних алгоритмів є громізким та не достатньо наочноим. Тому при складанні алгоритмів, що мають розгалуження та цикли слушно використовувати схематичне зображення.
Схеми алгоритмів регламентуються ГОСТ 19.701-90 та складаються із символів, стислого пояснювального тексту та з'єднуючих ліній.
Основним символом називають символ, що використовується у тих випадках, коли точний тип (вид) процесу чи носiя даних невідомий, або відсутня необхідність опису фактичного носiя даних.
Специфічний символ - це символ, що використовується у тих випадках, коли відомий точний тип (вид) процесу чи носiя даних, чи коли необхідно описати фактичний носiй даних.
Схема - це графічне подання, аналізу чи засобу вирішення завдання, у якому використовуються символи для зображення операцій, даних, потоку, обладнання і т.д.
Схеми пограм зображають послідовність операцій у програмі.
Опис символів
У посібнику приводиться опис символів, що найбільш часто використовуються при складанні схем (таблиці 1.1– 1.5).
Таблиця 1.1. Основні символи даних
|
Схематичне зображення символу
|
Назва символу |
Опис символу |
|
|
Дані |
Дані, носій яких не визначений |
|
|
Запам’ятовувані дані |
Дані, що зберігаються у вигляді, придатному для обробки, носій яких не визначений
|
Таблиця 1.2. Специфічні символи данних
|
Схематичне зображення символу |
Назва символу |
Опис символу |
|
|
Документ |
Символ зображає дані, на-ведені на носiї у вигляді, що зручно читати (маши-нограмма, документ для оптичного чи магнiтного зчитування, мікрофiльм, рулон стрічки з кінцевими даними) |
|
|
Ручний ввід |
Символ зображає дані, що вводяться вручну під час обробки з пристроїв будь-якого типу (клавіатура, перемикачі, кнопки, світлове перо, смуги зі штрихкодом) |
|
|
Дисплей |
Дані, подані у формі, які може прочитати людина на носії у вигляді зображую-чого пристрою (екран для візуального спостереження, індикатори введення інформації) |
Таблиця 1.3. Символ процесу та специфічні символи процесу
|
Схематичне зображення символу |
Назва символу |
Опис символу |
|
|
Процес |
Символ, що відображає функцію обробки даних будь-якого виду (виконан- ня визначеної операції чи групи операцій) |
|
|
Наперед визначений процес |
Наперед визначений процес, складається з однієї чи декількох операцій або кроків програми, що визначені в другому місці (у підпрограмі, модулі) |
|
|
Розв’язок
|
Розв’язок чи функція, що діє як перемикач і має один вхід та ряд альтернативних виходів, із яких тільки один може бути активізований після обчислення певних умов, визначених у середині цього символу. Відповідні результати обчислення можуть бути записані поряд із лініями, що зображають ці шляхи |
|
|
Паралельні дії |
Паралельні дії. Синхронi-зація двох чи більше пара-лельних операцій |
Таблиця 1.3. Продовження
|
|
Границя циклу |
Символ, що складається з двох частин, зображає початок та кінець циклу. Обидві частини символу мають один і той же iдентифікатор. Умови для iніціалiзації, прирощення, завершення і т. інш. розміщуються всередині симво-лу на початку чи у кінці залежно від розміщення операції, що перевіряє умову. |
Таблиця 1.4. Cимволи ліній.
|
Схематичне зображення символу |
Назва символу |
Опис символу |
|
|
Лінія |
Відображає потік данних чи управління. Можуть бути добавлені стрілки - покажчики для зручності читання |
|
|
Пунктирна лінія |
Альтернативний зв'язок між символами. Символ також використовують для анотованої дільниці |
Таблиця 1.5. Спеціальні символи.
|
Схематичне зображення символу |
Назва символу |
Опис символу |
|
|
З’єднувач |
Символ, що зображає вихід у частину схеми та вхід з другої частини цієї схеми та використовується для обриву та продовження її в іншому місці. Відповідні символи з’єднувачі повинні мати одне й те ж позначення |
Таблиця 1.5. Продовження
|
|
Термінатор |
Вхід та вихід із зовнішнього середо- вища (початок, або кінець схеми прог-рами, джерело чи пункт призначення данних) |
|
|
Коментар |
Для пояснювальних записів |
Правила застосування символів та виконання схем
Символи повинні бути по можливостi одного розміру.
Напрямок потоку зліва направо та зверху вниз вважається стандартним.
Якщо потік має напрямок відмінний від стандартного, стрілки повинні зазначати цей напрямок.
Слід уникати перетину ліній.
Зміни напрямку у точках перетину не допускається.
Дві або більше вхідних ліній можуть об'єднуватись в одну вихідну. При цьому місце об'єднання повинно бути зміщено.
Лінії повинні підходити до символу або зліва, або зверху а виходити або праворуч або знизу. Лінії повинні бути направлені до центру символу.
Паралельні дії у схемі зображаються так :

Цикл схематично зображається одним із вказаних способів:

Фрагмент схеми, що зображає вихід із частини схеми та вхід
з другої частини схеми :
Розглянемо складання схем алгоритмів на конкретних прикладах.
Алгоритм лінійної структури
Приклад
1.14. Скласти
алгоритм обчислення середньої швидкості
потоку рідини
U
(м/с) у круглій трубі постійного перерізу,
якщо об'ємні витрати рідини
,
а площа поперечного перерізу потоку -
![]()
Розв’язок.

Приклад
1.15. Цилiндричний
апарат з внутрішнім радіусом R(м)
та висотою H
(м)
на 60
заповнений рідиною, що має густину
.
Скласти алгоритм - для розрахунку маси
завантаженого апарату m
(кг),
якщо маса порожнього апарату - mа
(кг).
Розв’язок

Алгоритм розгілкованої (розгалуженої) структури
Приклад 1.16. Скласти алгоритм розрахунку функції y:
y = А + В, якщо, А і В – додатні;
y = А * В, якщо, А і В – від’ємні;
0, якщо, А і В – мають різні знаки.
Розв’язок

Приклад
1.17. Скласти
алгоритм для виводу на екран найбільшого
числа з наступних трьох чисел: X
,
X
,
X
.
Розв’язок
-
Приклад 1.18. Скласти алгоритм для розрахунку функції:
y
=

z=3x
+2x+1;
d>0.
Розв’язок

Алгоритм циклічної структури
Для організації циклу необхідно передбачити:
1) задання початкового значення параметра циклу – змінної, яка буде змінюватися при повторах циклу;
2) перевірку умови закінчення повторів.
Приклад 1.19. Скласти алгоритм для розрахунку всіх значень функції y=(x), в інтервалі зміни x від 1 до 100 включно, з кроком x=2.
Розв’язок
-
2.

-
Схема без використання символу, що означає цикл.
Схема з використанням символу “границя циклу”.
Друга схема – більш компактна.
Початкове, кінцеве значення змінної та крок змінної записуються в одній з двох часток символу “границя циклу” через кому або крапку з комою. Значення кроку можна не вказувати, якщо він дорівнює одиниці.
Приклад
1.20. Скласти
алгоритм для розрахунку суми y=
,
де n=1,2,…,100.
Розв’язок

Приклад 1.21. Скласти алгоритм розрахунку добутку цілих чисел від 50 до 273 включно та кількості цих чисел.
Розв’язок

Приклад 1.22. Скласти алгоритм розрахунку суми непарних цілих чисел від 1 до 50.
Розв’язок

Приклад
1.23. Скласти
алгоритм для вибору з масиву a
найбільшого числа, де i=0,1,2,…,99.
Розв’язок

Зазвичай при розв’язанні задач такого типу перший елемент масиву приймається за шукану величину та порівнюється з другим, після чого ім’я шуканої величини залишається в того елементу з двох масивів, який більш за все задовольняє умові встановленого завдання. Вибраний таким чином елемент порівнюється з наступним і так далі до повного перебору всіх елементів масиву.
Приклад 1.24. Розв’язати приклад 1.17, використовуючи циклічну структуру алгоритму.
Розв’язок

Приклад
1.25. Скласти
алгоритм обрахунку середнього
геометричного додатних елементів масиву
чисел X
,
X
,…,X
.
Розв’язок

Приклад
1.26. Скласти
алгоритм знаходження такого найменшого
цілого додатного числа n, при якому
функція y=(0,5)
/n
< 10![]()
Розв’язок

Наданий приклад є ітераційним циклом. На відміну від розглянутих раніш арифметичних циклів тут верхня межа параметра циклу не встановлена. Перевірка кінця розрахунку здійснюється по досягненні потрібної точності.
Приклад
1.27.
Скласти
алгоритм розрахунку всіх значень функції
,
якщо х є [1,4]
із кроком 1
, а y
є [1,2],
з кроком
0,5.
Розв’язок

Розглянута структура алгоритму є вкладеним циклом.
Приклад 1.28. Задано функції:
y1=(4+x)2,
y2=-x.
Скласти
алгоритм для знаходження точки перетину
цих функцій при –4
x
0. Обчислення зробити з точністю до
величини
.
Розв’язок











