На Горох
Математика

2.84. Алгоритм. Блок-схема

"Математика (в 3-х частях)", Демидова Т.Е., Козлова С.А., Тонких А.П.

Объяснение темы В оглавлении: 2.84. Алгоритм. Блок-схема

Кратко о теме

Алгоритм — это точный порядок действий, который помогает исполнителю решить задачу и получить нужный результат. Чтобы записать его наглядно, используют блок-схему: шаги обозначают фигурами, а стрелки показывают, куда двигаться дальше. Алгоритм может выполняться последовательно, содержать выбор по условию или повторять действия в цикле. Важно, чтобы команды были понятны исполнителю, выполнимы и в итоге приводили к результату за конечное число шагов.

Объяснение темы

Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.

Определения и обозначения

Алгоритм — точное и понятное исполнителю описание действий, приводящих к решению задачи. Это не произвольный перечень советов: в алгоритме ясно, что делать и в какой последовательности. Он должен подходить для поставленной задачи и завершаться нужным результатом. Точность помогает исполнителю не гадать, какой шаг выбрать.

Исполнитель алгоритма — человек или устройство, способные выполнять команды из определённого набора. Например, человек может следовать инструкции, а компьютер — выполнять предусмотренные программой действия. Команды должны быть понятны именно этому исполнителю, иначе он не сможет правильно их выполнить. Поэтому при составлении алгоритма учитывают, что исполнитель умеет делать.

Команда — отдельное указание исполнителю выполнить действие. Команда должна быть однозначной: её нельзя понимать несколькими способами. Она также должна быть выполнимой для данного исполнителя. Это требование помогает избежать остановки алгоритма из-за непонятного или невозможного шага.

Блок-схема — изображение алгоритма с помощью условных блоков и стрелок. В блоки помещают действия, вычисления, ввод данных или проверку условия. Стрелки показывают порядок, в котором выполняются шаги. По схеме легче проследить путь от начала до результата и заметить, где возможен выбор или повторение.

Как это устроено

Чтобы превратить задачу в алгоритм, сначала выясняют, какие данные даны и что требуется получить. Затем подбирают действия, которые связывают исходные данные с результатом. Например, для нахождения периметра прямоугольника нужны длина и ширина, а результатом будет значение периметра. Если не определить входные данные и цель заранее, можно составить последовательность шагов, которая не решает исходную задачу.

Команды располагают в порядке, соответствующем их смыслу. Сначала должны появиться данные, которые нужны для вычисления, и только затем — само вычисление. Перестановка шагов может привести к неверному результату или сделать выполнение невозможным: нельзя вычислить выражение, если нужные значения ещё не введены. Поэтому последовательность проверяют, мысленно проходя алгоритм от начала до конца.

В блок-схеме каждому шагу отводят подходящий блок, а стрелками соединяют блоки в нужном порядке. Условные обозначения позволяют быстро понять, где алгоритм начинается, что в нём вычисляют и куда ведёт каждый переход. Такая схема полезна не только для записи готового решения: по ней можно проверить, не пропущен ли шаг и понятно ли, что делать дальше. Если путь по стрелкам приводит к требуемому результату, схема отражает ход алгоритма.

При последовательном выполнении команды идут одна за другой без выбора. Ветвление появляется, когда нужно проверить условие и в зависимости от ответа выбрать один из путей. Например, при сравнении двух чисел сначала проверяют, больше ли первое второго; если нет, проверяют, меньше ли оно. Если обе проверки дают ответ «нет», числа равны. Так алгоритм учитывает разные случаи, а не выполняет один и тот же набор действий для всех входных данных.

Повторение действий называют циклом. В блок-схеме стрелка возвращается к повторяемому шагу или проверке, поэтому видно, что часть алгоритма выполняется снова. Чтобы цикл завершился, в нём задают условие продолжения или выхода, а данные должны изменяться так, чтобы условие со временем перестало выполняться. Если этого не предусмотреть, алгоритм может повторяться бесконечно или остановиться раньше, чем будет получен результат.

Основные элементы блок-схемы

ЭлементКак изображаютЧто означает
Начало и конец алгоритмаОвалОбозначает начало выполнения или его завершение
Действие или вычислениеПрямоугольникКоманда, вычисление или изменение данных
Ввод или вывод данныхПараллелограммПолучение исходных данных или показ результата
Проверка условияРомбПроверка, результат которой определяет дальнейший путь
Направление выполненияСтрелкаПереход от одного шага к следующему

Чтобы пользоваться таблицей, сначала определите, что происходит на шаге алгоритма: вводятся данные, выполняется действие или проверяется условие. Затем выберите соответствующую фигуру и соедините блоки стрелками в порядке выполнения. У ромба подпишите выходы, например «да» и «нет», чтобы было ясно, куда идти при каждом ответе.

Разбор задач

Периметр прямоугольника

Условие. Даны длина a и ширина b прямоугольника. Нужно составить алгоритм нахождения периметра и изобразить его блок-схемой. Периметр равен сумме длин всех сторон, поэтому можно использовать формулу P = 2 · (a + b). В схеме нужно показать, откуда берутся данные и как получить результат.

  1. Начните с блока «Начало», затем добавьте ввод длины a и ширины b. Данные должны быть введены до вычисления, иначе формула не сможет использовать нужные значения.
  2. После ввода поместите блок вычисления P = 2 · (a + b). Сначала складывают длину и ширину, затем умножают сумму на 2, поскольку у прямоугольника по две стороны каждой длины.
  3. Добавьте вывод значения P и блок «Конец». Соедините блоки стрелками в порядке выполнения: начало, ввод, вычисление, вывод, конец. Так схема показывает полный путь от исходных данных к ответу.

Ответ. Алгоритм: ввести a и b; вычислить P = 2 · (a + b); вывести P. Блок-схема состоит из начала, ввода данных, вычисления, вывода результата и конца, соединённых последовательными стрелками.

Сравнение двух чисел

Условие. Даны числа x и y. Алгоритм должен определить, какое число больше, или сообщить, что они равны. Одной проверки достаточно не во всех случаях: если x не больше y, это ещё не говорит, равны ли числа. Поэтому нужно предусмотреть три возможных результата сравнения.

  1. Начните алгоритм и введите x и y. Первым условием проверьте, верно ли x > y; если да, выведите сообщение «x больше y». Этот путь сразу завершается, потому что нужный результат уже найден.
  2. Если первое условие ложно, проверьте, верно ли x < y. При ответе «да» выведите сообщение «y больше x». В противном случае неравенства не выполняются, значит, числа равны.
  3. Для последнего случая выведите сообщение «числа равны», затем завершите алгоритм. В блок-схеме проверки помещают в ромбы, а выходы каждой проверки подписывают «да» и «нет». Так видны все три возможных результата.

Ответ. Алгоритм проверяет сначала x > y, затем, если нужно, x < y; иначе сообщает о равенстве. В схеме для двух проверок используются условные блоки с отдельными ветвями.

Сумма целых чисел от 1 до n

Условие. Дано натуральное число n. Требуется найти сумму целых чисел от 1 до n и представить алгоритм блок-схемой. Складывать числа по одному вручную неудобно, поэтому повторяем одно и то же действие — добавляем очередное число к накопленной сумме. Для этого вводят счётчик i, который показывает, какое число добавляют сейчас.

  1. В начале введите n и задайте начальные значения S = 0 и i = 1. Сумма начинается с нуля, а счётчик — с первого числа последовательности. Затем проверьте условие i ≤ n.
  2. Если условие истинно, выполните S = S + i, а затем увеличьте счётчик: i = i + 1. После этого стрелка возвращает алгоритм к проверке i ≤ n. Так будут последовательно добавлены числа от 1 до n.
  3. Если условие ложно, выведите S и завершите алгоритм. В блок-схеме ромб проверяет условие продолжения, а его ветви «да» и «нет» ведут соответственно к повторению и к выводу результата. Изменение i на каждом повторе позволяет циклу закончиться.

Ответ. Алгоритм задаёт S = 0 и i = 1, пока i ≤ n прибавляет i к S и увеличивает i на 1, затем выводит S. Цикл завершается, когда i становится больше n.

Типичные ошибки

Считать, что команды можно выполнять в любом порядке, — ошибка: результат может измениться, а некоторые шаги станут невозможными. Так думают, когда воспринимают алгоритм как набор действий без связи между ними. Проверка простая: пройдите команды по стрелкам и убедитесь, что для каждого шага уже подготовлены нужные данные. Если вычисление использует ещё не введённое значение, порядок неверен.

Вписывать в один блок несколько несвязанных команд неудобно: становится трудно понять, в какой момент выполняется каждая из них. Так поступают, стараясь сделать схему короче, но краткость мешает проследить ход решения. Разделите запись на отдельные действия и проверьте, можно ли однозначно указать переход после каждого из них. Если внутри блока скрыто несколько шагов, которые могут выполняться отдельно, их лучше разделить.

Условный блок без подписей на выходах оставляет неясным, какой путь выбрать после проверки. Это часто происходит, когда автор считает смысл условия очевидным. Чтобы проверить схему, рассмотрите оба возможных ответа условия и подпишите ветви, например «да» и «нет». По каждой подписи должно быть понятно, к какому следующему действию она ведёт.

В цикле можно забыть изменить счётчик или задать условие выхода. Тогда повторение либо закончится слишком рано, либо не завершится вовсе. Ошибку допускают, когда сосредоточены на повторяемом действии и не отслеживают движение к завершению. Проверьте, меняются ли данные на каждом повторе и может ли условие со временем стать ложным; проследите цикл для небольшого значения n.

Связь с другими темами

Для составления алгоритмов нужно уметь читать условия задач, выполнять арифметические действия и соблюдать порядок операций. Эти навыки помогают правильно определить исходные данные и выбрать вычисления, которые дадут нужный результат. Если неверно понять условие или ошибиться в вычислениях, схема может быть построена аккуратно, но не решит задачу. Поэтому перед записью шагов полезно проверить, что именно требуется найти.

Алгоритмы и блок-схемы готовят к изучению программирования: они помогают продумать порядок команд до записи программы. Те же приёмы полезны при пошаговом решении вычислительных задач и составлении инструкций. Ветвление позволяет описывать выбор, а цикл — повторять действия без многократной записи одинаковых шагов. Умение проверять каждый переход помогает находить ошибки и в алгоритмах, и в программах.

Что запомнить

  • Алгоритм задаёт понятный порядок действий для исполнителя.
  • Команды алгоритма должны быть однозначными и выполнимыми.
  • В блок-схеме блоки обозначают шаги, а стрелки — порядок их выполнения.
  • Проверка условия позволяет выбрать дальнейший путь выполнения.
  • Цикл повторяет действия, пока выполняется заданное условие.
  • Алгоритм должен приводить к требуемому результату за конечное число шагов.

Частые вопросы по теме

Чем алгоритм отличается от обычного списка действий?

В алгоритме действия записаны в точном порядке и должны приводить к решению задачи. Обычный список может содержать советы или шаги, которые не обязательны, допускают разные толкования или не дают нужного результата.

Почему команды алгоритма должны быть понятны исполнителю?

Исполнитель может выполнить только те команды, смысл которых ему известен. Если указание непонятно или допускает разные толкования, он не сможет надёжно выполнить алгоритм.

Как в блок-схеме показать проверку условия?

Проверку записывают в условном блоке, обычно изображаемом ромбом. Из него проводят стрелки для возможных ответов, например «да» и «нет», и подписывают их.

Как понять, что в алгоритме есть цикл?

Цикл есть, если одна или несколько команд выполняются повторно. На блок-схеме это видно по стрелке, которая возвращает выполнение к повторяемым шагам после проверки условия.

Что произойдёт, если в цикле не указать условие окончания?

Выполнение может продолжаться бесконечно, потому что алгоритм не получит команды остановить повторение. Чтобы цикл завершился, нужно задать условие выхода и правильно изменять данные, от которых оно зависит.

Спросить по теме параграфа

2.84. Алгоритм. Блок-схема

Учебник

Оглавление →
Предмет
Математика
Учебник
"Математика (в 3-х частях)", Демидова Т.Е., Козлова С.А., Тонких А.П.