
- •1 Основні поняття
- •Архітектура комп’ютера
- •Етапи підготовки і рішення задач на еом
- •Програма, що не має помилок під часу трансляції і виконання, може і не дати вірних результатів через так звані логічні помилки в обраному алгоритмі, тобто алгоритмічних помилок.
- •1. Основні поняття алгоритмічної мови Бейсік.
- •4. Функції. Вирази.
- •Вправи та запитання
- •6. Виведення результатів
- •Розгалуження
- •1.Логічний вираз
- •3. Команда розгалуження if. Повна форма умовної команди.
- •10.Цикли
- •11.Оператори циклу
- •13. Ітераційні цикли
- •Мал.12 Схеми вкладених циклів.
- •Вправи та запитання
- •16. Нестандартні функції та підпрограми
Мал.12 Схеми вкладених циклів.
На мал.11б цикли перетинаються, а це неправильно так як внутрішній цмкл перетинається з зовнішнім.
Доцільно проводити розділення обчислень між зовнішніми і внутрішніми циклами, якщо це можливо. У зовнішній цикл необхідно включати всі обчислення, які не залежать від параметру внутрішнього циклу. Це дозволить значно скоротити машинний час розрахунків. По цій же причині в якості параметру зовнішнього циклу вибирають зміну, обчислення якої найбільш складні.
Для програмування вкладених циклів використовують оператори типу FOR– NEXT, або WHILE – WEND. Якщо вкладені цикли мають спільне закінчення то оператори NEXT можна об’єднбнати в один, тоді структура буде мати наступний вигляд:
For i=1 то 10
For j=1 то 30
<оператор тіла циклу>
Next j, i
При організації вкладених циклів за допомогою операторів WHILE – WEND кожному оператору WHILE повинен відповідати свій оператор WEND.Крім цього вкладені цикли передумовою або післяумовою
.
. ВИКОРИСТАННЯ МАСИВІВ
Масиви. Масив – це впорядкований набір даних (змінних ) одного типу. Основне призначення масивів – запам’ятовування (великої кількості) елементарних даних одного типу під час виконання програми.
Масиви мають імена, які їм надає користувач.
Масиви складаються з елементів. Кожний елемент має індекс, за яким його можна знайти в масиві. Кількість індексів визначає розмірність масиву.
Важливою характеристикою масиву є його розмір – загальна кількість елементів у масиві.
Одновимірні масиви. Елемент масиву позначають іменем масиву, за яким у круглих дужках зазначають індекс елемента. Це називають змінною з індексом. Наприклад, елементи одновимірного масиву розміру К з іменем А позначають так:
А(1) А(2) … А(К).
Двовимірні масиви. Деякі дані зручно наводити у вигляді прямокутної таблиці, який у Бейсику відповідає поняттям двовимірного масиву. Розглянемо прямокутну таблицю В:
b11 b12 … b1n
b21 b22 … b2n
…
bm1 bm2 … bmn
Елементи двовимірних масивів мають два індекси. Перший індекс вказує на номер рядка, а другий – на номер стовпця на перетині яких є конкретний елемент. індекси записують у дужках і відокремлюють комою.
Елементи двовимірного масиву В позначають так:
В (1,1) В(1,2) … В(1,N)
В (2,1) В(2,2) … В(2,N)
……………………………
В (M,1) В(M,2) … В(M,N).
Де В(1,1) – елемент, розташований на перетині 1-го рядка і 1-го стовпця; В(5,10) – елемент на перетині 5-го рядка і 10-го стовпця.
У пам’яті машини елементи масиву розміщені послідовно, рядок за рядком, а саме:
В (1,1) В(1,2) … В(1,N), В (2,1) В(2,2) … В(2,N),…,В (M,1), … В(M,N).
Використання масивів забезпечує наочність у роботі з даними та економією імен. Головна перевага – це прямий доступ до будь-якого елемента масиву, якщо відомий його індекс.
З індексними змінними, які позначають елементи масиву, можна виконувати такі ж дії, як і з простими змінними: операції введення – виведення, арифметичні операції тощо. Особливо зручно опрацьовувати масиви за допомогою оператора циклу FOR. На місці індексів можуть бути арифметичні вирази, які заздалегідь обчислюються і округлюються до найближчого цілого значення.
2. Оператор опису масивів. Користувач описує масиви на початку програми: зазначає їхні імена та розміри кожного. Таким чином резервується пам’ять, де будуть розміщені елементи масивів.
Для описання масивів є оператор опису масивів DIM:
DIM список масивів
Де DIM (розмір) – службове слово. У списку масивів зазначаються імена масивів і максимальне значення відповідних індексів
Приклад 2. Якщо у програмі використано одновимірний масив А з п’ятьма елементами і двовимірний масивом В, які складаються з шести рядків і десяти стовпців, то оператор матиме вигляд (якщо відлік значень індексів починається з одиниці.):
10 DIM А(5), В(6, 10).
Розміри масивів зручно задавати за допомогою оператора IMPUT. Наприклад:
10 IMPUT “К=”; К
20 IMPUT “М,N= ; M,N
30 DIM A(K), B(M,N)
Зауваження 1. У мові Бейсик за замовчуванням мінімальне значеня індексу дорівнює нулю. Тому насправді у прикладі 2 описано одновимірний масив А з шістьма елементами та двовимірний масив В з 7 рядками та 11 стовпцями.
Довідка 1. Оператор OPTION BASE. можна задати потрібне мінімальне значення індексу на початку програми за допомогою оператора
OPTION BASE стала
Тут OPTION, BASE – службові слова. Стала задає мінімальне значення індексу, тобто 1 або 0 (або інше число в середовищі Турбо Бейсик). Наприклад, у середовищі Турбо Бейсик оператора
10 OPTION BASE 1985
20 DIM C(1994)
описують масив з десятьма елементами, а набуває значення деякого року з діапазону 1985…1994.
Надалі вживатимемо, що мінімальне значення індексу дорівнює одиниці. Оператор OPTION BASE можна і не використовувати, а елемент масиву з нульовим індексом не брати до уваги.
використання одновимірних масивів. Розглянемо способи введення – виведення масивів. Для введення чи виведення масивів потрібно виконати певні дії з усіма елементами масивів з а допомогою операторів присвоєння, READ, INPUT, PRINT, використовуючи оператор циклу.
Наприклад, ввести значення п’яти елементів масиву можна двома способами:
10 DIM A(5) 2) 10 DIM A(5)
20 FOR I = 1 TO 5 20 FOR I = 1 ТО 5
30 READ A (I) 30 INPUT A(1)
40 NEXT I 40 NEXT I
50 DATA список даних
4. Використання двовимірних масивів. Для введення - виведення двовимірних масивів і виконання інших операцій з його елементами використовують конструкцію "вкладені цикли", яка має вигляд
FORI-I1TOI2
FOR J-J1 TO J2
серія
NEXT J NEXT І
5.Сортування (впорядкування) масиву. Задачі сортування (впорядкування елементів масиву за деякою ознакою) мають важливе практичне значення.
Задача 4. Є список імені ( прізвище тощо), який треба видрукувати за алфавітом.
Розглянемо програму 31. Нехай є сім імен, які описані в блоці даних. Занесемо імена в текстовий масив і впорядкуємо його за зростанням значень елементів. Результати виведемо на екран. Рядок 120 призначений для виведення на екран проміжних результатів сортування масиву.
10 REM Програма 31 Сортування масиву імен
20CLS
ЗО DATA Наталка, Ростик, Тарас, Роман, Галя, Юля, Андрій
40 К-7: DIM A$(K)
50 FOR 1= 1 ТОК
60READA$(l) 70 NEXT I
80FORJ= 1 ТО К-1 90 FOR І = 1 ТО К - J
100 IFA$(I)>A$(1+1)THENC$=A$(I):A$(I) = A$(I+1):A(I+1)^C$
110 NEXT I
120 FOR І = 1 ТО К: PRINT А$(ї); ""; : NEXT I: PRINT
130 NEXTJ
140 FOR 1= 1 ТОК
150 PRINT А$(І);"";
160 NEXT І
170 END
Після виконання програми 31 отримаємо список імен за алфавітом: Андрій Галя Наталка Роман Ростик Тарас Юля