Класифікація внутрішніх структур алгоритмів

Основними алгоритмічними структурами є: лінійна, розгалуження та цикл.

Лінійні структури. Прості задачі мають лінійний алгоритм розв'язання. Це означає, що він не містить перевірок умов і повторень.

Розглянемо алгоритм такої задачі: за даними довжинами катетів а, b обчислити площу прямокутного трикутника.

Алгоритм:

Вхід: Числа а,b.

Ввести а,b.

2. S=a*b/2.

Вивести значення S.

Кінець.

Вихід: Значення площі S.

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

Структура-розгалуження. Достатньо часто та або інша дія має виконуватись залежно від значення логічного виразу, який є умовою. У таких випадках використовується розгалуження.

Розглянемо алгоритм розв'язання квадратного рівняння

ax2+bx+с=0.

Алгоритм:

Вхід: Коефіцієнти а,b і с із рівняння ax2+bx+с=0.

1. Обчислити D=b2–4ac.

2. Якщо D<0, то (відповісти "Розв'язків немає"; Перейти до 6).

3. Якщо D=0, то (обчислити x=–b/(2a); Перейти до 6).

4. Обчислити x1=(–b+sqrt(D))/(2a).

5. Обчислити x2=(–b–sqrt(D))/(2a).

Закінчити роботу.

Вихід: "Розв'язків немає" або корінь x, або корені x1,x2.

У цьому алгоритмі використовується команда вигляду

Якщо <умова>

то (<послідовність команд>)

Виконуючи цю команду, необхідно перевірити істинність умови. Якщо умову виконано, то здійснюємо перехід до виконання першої із послідовності команди, що стоїть після слова то, і потім переходимо до виконання наступних лінійних команд. Якщо умова помилкова, то пропускаємо (<послідовність команд>) і переходимо до виконання наступної команди. Такі команди називають умовними, або розгалуженнями.

При тестуванні алгоритмів із розгалуженнями необхідно підбирати такі початкові дані, щоб можна було перевірити всі гілки.

Циклічні структури. Якщо будь-які оператори необхідно виконати кілька разів, то їх не переписують кожного разу заново, а організують цикл. Розглянемо алгоритм задачі: підрахувати кількість цифр у записі натурального числа n. Ідея розв'язання: із заданого числа вибирати із молодшого розряду цифру за цифрою, доки число не вичерпається, тобто не стане рівним нулю; кожну цифру враховувати, тобто підраховувати їх кількість.

Алгоритм:

Вхід: Число n.

Ввести число n.

2. К=0 {готуємо лічильник кількості цифр}.

3. Якщо n=0, то перехід до п.7.

4. K=К+1.

5. n=ndiv10.

Перехід до п.3.

Друк К.

Кінець.


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



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