Поняття алгоритму. Основи алгоритмізації

Послідовності дій, описувані будь-яким алгоритмом, можна поділити на такі алгоритмічні структури:

- слідування – кожна наступна дія виконується після завершення попередньої;

- розгалуження – залежно від умови потрібно виконати ту чи іншу дію;

- цикли – багаторазове виконання дії або групи дій.

Повторювані дії називаються тілом циклу. Д ля організації циклу необхідно задати початкові присвоєння до входження в цикл, тіло циклу та умову завершення циклу. Крім того, в циклі необхідно передбачити крок зміни параметра циклу, інакше це буде нескінченний цикл або “зациклювання”. Спосіб задання умови визначає такі види циклів:

1) цикл з передумовою (умова повторення перевіряється щоразу перед виконанням тіла циклу)

2) цикл з післяумовою (умова завершення циклу перевіряється щоразу після виконання тіла циклу);

3) цикл з параметром (повторення послідовності дій відбувається при різному значенні деякої змінної, яка називається параметром циклу; значення параметра циклу змінюється від деякого початкового значення із заданим кроком (+1 або –1) до деякого кінцевого значення. Досягнення параметром його кінцевого значення є умовою завершення циклу.

Залежно від використання вказаних алгоритмічних структур розрізняють відповідно лінійні, розгалужені та циклічні обчислювальні процеси. Алгоритм розв`язання практичних задач у більшості випадків поєднує у собі всі перелічені вище алгоритмічні структури.

Розглянемо алгоритмізацію лінійного обчислювального процесу на прикладі.

Приклад 1. Скласти блок схему алгоритму обчислення і виведення на друк значення функції при відомих значеннях a, b, x.

Враховуючи, що обчислення виразу зустрічається двічі, його визначення виділимо в алгоритмі окремо. Тоді алгоритм розв`язання задачі матиме такий вид:

 

y=arctg(z)+ln|z|

 

       
   
 
 

 


Розглянемо алгоритмізацію розгалуженого обчислювального процесу.

Обчислювальний процес називається розгалуженим, якщо в залежності від виконання або невиконання деяких логічних умов він реалізується по одному із декількох шляхів розв’язання задачі. При одних значеннях початкових даних вибирається лише один шлях розв’язання. Логічна умова, яка перевіряється, може залежати як від початкових даних, так і від проміжних результатів.

Приклад 2. С класти блок-схему алгоритму знаходження коренів квадратного рівняння ax2+bx+c=0.

Цей обчислювальний процес має три шляхи обчислень.

На першому, якщо виконується умова a=0, обчислюється корінь x лінійного рівняння bx+c=0.

На другому, якщо виконується умова ( -дискримінант), обчислюється x1 і x2 (випадок, коли =0 в алгоритмі не розглядаємо).

На третьому, якщо <0, обчислюється дійсна частина і коефіцієнт уявної частини комплексних коренів рівняння. Після дій, передбачених алгоритмом, обчислювальний процес завершується.

 

 

Розглянемо алгоритмізацію циклічного обчислювального процесу. На практиці часто виникає необхідність багаторазового повторення деяких ділянок обчислювального процесу при різних значеннях величин, які входять до них.

Такий процес повторення одних і тих же дій називається циклічним, а ділянка, яка повторюється, називається циклом.

Приклад 3. Скласти блок-схему алгоритму обчислення таблиці значень функції:

при , ;

Позначимо xp=0.1 – початкове значення аргументу,

xk=5.1 – кінцеве значення аргументу,

dx=0.5 – крок зміни аргументу.

 


Запишемо цей алгоритм з використанням блоку організації циклічного обчислювального процесу:

Приклад 4. Записати алгоритм знаходження суми елементів масиву X=(x1,x2,…,xn); n=15;

Приклад 5. Скласти блок-схему алгоритму знаходження максимального елемента в масиві X=(x1,x2,…,x15); і його місцезнаходження.

Позначимо: Max - максимальний елемент, m – його номер.

 

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: