Алгоритм в программировании — это набор четко определенных инструкций для решения конкретной задачи. Алгоритм принимает набор входных данных и производит желаемый результат.
Например, алгоритм сложения двух чисел:
запросите у пользователя два числа;
выполните операцию сложения двух пользовательских чисел с помощью оператора +
;
выведите результат на экран.
Характеристика хорошего алгоритма
Входные и выходные данные должны быть четко определены.
Каждый шаг алгоритма должен быть понятным и однозначным.
Алгоритм должен быть наиболее эффективным среди множества других способов решения задачи.
Алгоритм не должен быть зависимым от конкретного языка программирования. Алгоритм должен быть сделан таким образом, чтобы его можно было использовать на разных языках программирования.
Примеры алгоритмов
Алгоритм №1: Сложение двух чисел
1 2 3 4 5 6 |
Шаг 1: Старт Шаг 2: Объявите переменные num1, num2 и sum. Шаг 3: Получите значения num1 и num2 от пользователя. Шаг 4: Сложите num1 и num2 и присвойте результат переменной sum. Шаг 5: Выведите на экран значение sum. Шаг 6: Стоп |
Алгоритм №2: Определение наибольшего числа среди трех чисел
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Шаг 1: Старт Шаг 2: Объявите переменные a, b и c. Шаг 3: Получите значения a, b и c от пользователя. Шаг 4: If a > b If a > c Вывести a, как наибольшее число. Else Вывести c, как наибольшее число. Else If b > c Вывести b, как наибольшее число. Else Вывести c, как наибольшее число. Шаг 5: Стоп |
Алгоритм №3: Поиск корней квадратного уравнения ax2 + bx + c = 0
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Шаг 1: Старт Шаг 2: Объявите переменные a, b, c, D, x1, x2, rp и ip. Шаг 3: Вычислите дискриминант. D = b2-4ac Шаг 4: If D ≥ 0 r1 = (-b+√D)/2a r2 = (-b-√D)/2a Выведите на экран r1 и r2 как корни. Else Вычислите вещественную и мнимую части. rp = -b/2a ip = √(-D)/2a Выведите на экран rp+j(ip) и rp-j(ip) как корни. Шаг 5: Стоп |
Алгоритм №4: Определение факториала числа
1 2 3 4 5 6 7 8 9 |
Шаг 1: Старт Шаг 2: Объявите переменные n, factorial и i. Шаг 3: Инициализируйте переменные: factorial = 1, i = 1. Шаг 4: Получите значение переменной n от пользователя. Шаг 5: Повторяйте шаги, пока i = n: 5.1: factorial = factorial*i 5.2: i = i+1 Шаг 6: Выведите факториал числа на экран. Шаг 7: Стоп |
Алгоритм №5: Является ли число простым или нет
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
Шаг 1: Старт Шаг 2: Объявите переменные n, i и flag. Шаг 3: Инициализируйте переменные: flag = 1, i = 2. Шаг 4: Получите значение переменной n от пользователя. Шаг 5: Повторяйте шаги, пока i=(n/2): 5.1 Если остаток от n÷i равен 0 flag = 0 Переходите к шагу 6. 5.2 i = i+1 Шаг 6: Если flag = 0 Выведите на экран, что n - не простое число. Else Выведите на экран, что n - простое число. Шаг 7: Стоп |