На Горох
Информатика, 8 класс

§ 18. Линейные программы

"Информатика", Поляков К.Ю., Еремин Е.А.

Объяснение темы В оглавлении: § 18. Линейные программы

Кратко о теме

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

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

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

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

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

Оператор присваивания — команда, которая вычисляет выражение и записывает полученное значение в переменную. Например, запись s = a * b означает, что Python сначала умножит значения a и b, а затем сохранит результат в s. Присваивание нужно, чтобы хранить исходные данные и промежуточные или итоговые результаты.

Команда ввода получает исходные данные от пользователя и сохраняет их в переменных. В Python часто используют запись a = float(input()), которая считывает число и преобразует его в вещественное значение. Ввод нужен, чтобы программа могла работать с данными, которые заранее неизвестны.

Команда вывода отображает на экране значения переменных и результаты вычислений. В Python для этого применяют, например, print(s). Благодаря выводу пользователь видит, что рассчитала программа, а не только вводит данные.

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

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

Исходные данные вводят и сохраняют в переменных, чтобы обращаться к ним в последующих вычислениях. Например, после команды a = float(input()) значение, введённое пользователем, можно использовать в формулах с a. Если данные нужны в нескольких вычислениях, переменная позволяет не вводить их заново и делает запись программы понятнее.

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

При присваивании сначала вычисляется вся правая часть, и только потом результат записывается в переменную слева. Так, в записи x = x + 1 правая x означает прежнее значение переменной, к которому прибавляется единица. Затем новое значение сохраняется под именем x; знак = здесь не утверждает, что две части равны.

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

Основные команды линейной программы

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

Элемент программыНазначениеПример записи на PythonЧто происходит
Ввод данныхПолучить исходное числоa = float(input())Введённое значение сохраняется в переменной a
Присваивание значения переменнойСохранить значениеa = 5В переменной a появляется число 5
Вычисление арифметического выраженияПолучить результат по формулеs = a * bЗначения a и b перемножаются, результат сохраняется в s
Вывод результатаПоказать значениеprint(s)Значение переменной s отображается на экране
Последовательность выполнения командЗадать порядок действийa = float(input())
b = a * 2
print(b)
Сначала вводится a, затем вычисляется b, после этого выводится b

Разбор задач

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

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

  1. Считаем две стороны: a = float(input()) и b = float(input()).
  2. Вычисляем периметр: p = 2 * (a + b). Скобки нужны, чтобы сначала сложить стороны.
  3. Вычисляем площадь: s = a * b.
  4. Выводим результаты командами print(p) и print(s).

Ответ: программа выводит периметр и площадь прямоугольника для введённых длины и ширины.

Значение выражения по x

Условие не задаёт конкретную формулу, поэтому разберём пример: вычислим y = (x + 2)² / 3 − x. Сначала вводим x, затем записываем выражение средствами Python. Степень обозначается **, а скобки сохраняют порядок действий из формулы.

  1. Вводим значение: x = float(input()).
  2. Записываем формулу: y = (x + 2)**2 / 3 - x. Python сначала вычислит выражение в скобках и степень, затем деление и вычитание.
  3. Выводим результат: print(y).

Ответ: программа показывает значение выбранного выражения для введённого x. Если в условии дана другая формула, нужно заменить только выражение справа от y =, сохранив её математический порядок.

Гипотенуза и площадь треугольника

Условие: по двум катетам a и b прямоугольного треугольника найти гипотенузу c и площадь S. По теореме Пифагора c = √(a² + b²), а площадь равна половине произведения катетов. Сначала вводим оба катета, после чего вычисляем результаты и выводим их.

  1. Считываем значения: a = float(input()) и b = float(input()).
  2. Вычисляем сумму квадратов: q = a**2 + b**2. Это выражение соответствует содержимому корня.
  3. Извлекаем корень и находим площадь: c = q**0.5 и s = a * b / 2. Степень 0.5 в Python используется для вычисления квадратного корня.
  4. Выводим оба ответа: print(c) и print(s).

Ответ: программа выводит длину гипотенузы и площадь треугольника. Разделение вычислений на команды помогает проверить, что в корень попали квадраты обоих катетов, а площадь найдена отдельно.

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

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

Математическое равенство пытаются записать как будто знак = проверяет одинаковость частей. В Python это оператор присваивания, поэтому результат вычисления направляют в переменную, например s = a * b. Чтобы проверить запись, найди слева имя переменной, в которую должен сохраниться результат.

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

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

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

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

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

  • В линейной программе команды выполняются строго по порядку.
  • Сначала вводят исходные данные, затем выполняют вычисления, после этого выводят результат.
  • В присваивании сначала вычисляется правая часть, затем значение записывается в переменную слева.
  • Для изменения порядка арифметических операций используют скобки.
  • Каждая переменная перед использованием должна получить значение.
  • Линейная программа не содержит ветвлений и повторений команд.

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

Чем линейная программа отличается от других видов программ?

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

Почему команда присваивания записывается со знаком «=»?

В Python знак = означает, что значение выражения справа нужно вычислить и сохранить в переменной слева. Это не равенство из математики: значения двух частей не сравниваются.

Можно ли использовать переменную справа от присваивания?

Да, если переменной уже присвоено значение. Python подставит его в выражение справа, вычислит результат и сохранит результат в переменную слева.

Зачем нужны скобки в арифметическом выражении?

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

Почему программа выдаёт ошибку, если переменная не была введена или вычислена?

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

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

§ 18. Линейные программы

Учебник

Оглавление →
Предмет
Информатика
Класс
8 класс
Учебник
"Информатика", Поляков К.Ю., Еремин Е.А.