Все разделы
Выбрать школу

Школа. Увлечения. Большое будущее.

PROSCHOOLS · ОБРАЗОВАНИЕ РЯДОМ

Ваш город

Выберите город, чтобы находить образование и возможности рядом.

Как учитываем городКаталог и кнопки «Выбрать школу» покажут школы выбранного города.Онлайн-курсы, учебник, ГДЗ и задания к экзаменам доступны по всей России.

Популярные города

Будет выбран: Вся Россия

Учебные материалы останутся прежними.

Поиск по сайту

По всему сайтуШколы выбранного города — выше в результатах

С чего начнём?

↑ ↓ — выбрать результат · Enter — открыть · Esc — закрыть

Линейные алгоритмы и обмен значений

💻 Информатика · 9 класс

Последовательное выполнение команд, работа с переменными и классический приём обмена значений двух переменных.

Программный код на экране
Программный код на экранеMartin Vorel · Wikimedia Commons · CC BY-SA 4.0

Линейные алгоритмы

Линейный алгоритм — это алгоритм, в котором команды выполняются строго одна за другой, в том порядке, в каком записаны, без ветвлений и повторений. Это самая простая алгоритмическая структура, которую называют следованием. С неё начинают изучение программирования, потому что её легко проследить и понять.

Переменные и присваивание

Переменная — это именованная ячейка памяти, в которой хранится значение. У переменной есть имя, тип и текущее значение. Поместить значение в переменную можно командой присваивания:

a := 5

Слева от знака стоит имя переменной, справа — выражение. Сначала вычисляется правая часть, затем результат записывается в переменную. Важно понимать: старое значение при этом полностью теряется и заменяется новым. Поэтому присваивание — это не равенство из математики, а действие «записать значение в ячейку».

Пример линейного алгоритма

Вычислим периметр прямоугольника со сторонами, которые обозначим переменными:

ввод a, b P := 2 * (a + b) вывод P

Все три команды выполняются по очереди — это типичный линейный алгоритм. Сначала программа получает данные, затем вычисляет результат, затем выводит его. Этот порядок «ввод — обработка — вывод» характерен для большинства простых программ.

Обмен значений двух переменных

Классическая задача: поменять местами значения двух переменных, которые мы обозначим a и b. Прямое присваивание a := b сразу теряет старое значение переменной a, и оно становится недоступным. Поэтому вводят вспомогательную переменную c, которая временно хранит одно из значений:

c := a a := b b := c

Шагabc
начало37—
первая команда373
вторая команда773
третья команда733

В результате значения переменных поменялись местами: там, где было 3, стало 7, и наоборот. Вспомогательная переменная сохранила первое значение от потери.

Выражения и порядок действий

В правой части присваивания может стоять не только число, но и целое арифметическое выражение. При его вычислении соблюдается обычный математический порядок действий: сначала умножение и деление, потом сложение и вычитание, а скобки меняют этот порядок. Поэтому в формуле периметра скобки обязательны: без них умножение на 2 выполнилось бы только для первой стороны. Линейные алгоритмы часто состоят именно из цепочки таких вычислений, где результат одной команды используется в следующей. Например, можно сначала вычислить площадь, а затем по ней — другую величину. Главное — помнить, что к моменту использования переменной в неё уже должно быть записано значение, иначе результат будет неопределённым.

Частые ошибки. Меняют значения без вспомогательной переменной и теряют данные; путают порядок команд (в линейном алгоритме он определяет результат); читают присваивание как равенство в математике; забывают, что правая часть вычисляется до записи в переменную.

Кратко о главном

  • Линейный алгоритм — команды одна за другой без ветвлений и циклов.
  • Присваивание сначала вычисляет правую часть, затем записывает результат.
  • Для обмена значений нужна вспомогательная переменная.
  • Порядок команд определяет результат.
  • Типичная схема программы: ввод — обработка — вывод.