"Информатика", Семакин И.Г., Залогова Л.А., Русаков С.В., Шестакова Л.В.
Величина в алгоритме хранит данные, с которыми компьютер выполняет действия: например, введённые числа или результат вычисления. У каждой величины есть имя, тип и текущее значение. Имя помогает обратиться к данным, тип определяет допустимые значения и операции, а присваивание записывает новый результат. Чтобы алгоритм решал задачу, нужно правильно выбрать тип величин, записать выражения и организовать ввод исходных данных и вывод ответа.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Величина — объект алгоритма, у которого есть имя, тип и значение. Она нужна, чтобы хранить данные, пока алгоритм их обрабатывает: например, введённое число или результат вычисления. Без величин алгоритму было бы негде сохранять информацию между командами. Одно и то же место хранения может содержать разные значения в разные моменты работы.
Имя величины — обозначение, по которому алгоритм обращается к данным. Имя выбирают так, чтобы по нему было понятно назначение величины: например, длина или сумма. Обычно имя начинают с буквы, а дальше используют буквы, цифры и знак подчёркивания; пробелы и знаки операций не подходят. В конкретном языке программирования могут быть дополнительные ограничения, поэтому имена не должны совпадать с его служебными словами.
Тип величины — характеристика, которая определяет, какие значения она может принимать и какие действия с ними допустимы. Например, целый тип подходит для количества предметов, а вещественный — для измерений, где возможна дробная часть. Тип нужен, чтобы алгоритм правильно понимал данные и выполнял над ними подходящие операции. Для текста и логических условий также применяют отдельные типы.
Присваивание — команда, которая вычисляет выражение справа от знака присваивания и записывает результат в величину слева. Например, команда s := a + b помещает сумму a и b в s. Сначала получают результат выражения, и только потом меняют значение s. Присваивание позволяет сохранять результаты промежуточных вычислений и использовать их дальше.
Данные задачи превращаются в величины, которыми оперирует алгоритм. Исходным данным дают имена, чтобы команды могли к ним обращаться, а результатам — отдельные имена, чтобы сохранить вычисленное. Например, при расчёте площади нужны величины для размеров и для самой площади. Такое разделение помогает проследить, откуда алгоритм получает данные и куда помещает ответ.
Тип выбирают по смыслу данных, потому что не всякая величина подходит для любой информации. Целые и вещественные числа используют в вычислениях: целые удобны для счёта предметов, а вещественные позволяют представить дробные результаты. Текстовые значения нужны для слов и символов, а логические — для условий, которые могут быть истинными или ложными. Неподходящий тип ограничит допустимые действия или не позволит сохранить нужное значение.
При присваивании сначала вычисляется всё выражение справа, а затем полученный результат записывается в величину слева. Поэтому в команде x := x + 1 правая часть использует прежнее значение x, увеличивает его на единицу, а левая часть получает новое. Старое значение после этого не хранится в той же величине. Если оно ещё понадобится, его заранее сохраняют отдельно.
Арифметические операции задают, что именно алгоритм делает с числами, а скобки — в каком порядке выполнять части выражения. Сначала обычно вычисляют выражения в скобках, затем умножение и деление, после них сложение и вычитание. Поэтому a + b * c означает a + (b * c), а не (a + b) * c. Если нужен другой смысл, его явно задают скобками, иначе алгоритм получит результат по обычным правилам приоритета.
Ввод и вывод связывают алгоритм с пользователем: при вводе он получает исходные значения, а при выводе показывает результат. Это позволяет запускать один и тот же алгоритм с разными данными, не переписывая его команды. Вывод также помогает проверить работу: можно сопоставить полученное число с ожидаемым. Если результат неверен, проверяют введённые данные, выбранные типы и вычисления.
| Характеристика | Целая | Вещественная | Символьная или строковая | Логическая |
|---|---|---|---|---|
| Пример значения | −4, 0, 27 | 2,5; −0,75 | 'А'; "привет" | истина, ложь |
| Какие значения хранит | Целые числа без дробной части | Числа, в том числе с дробной частью | Отдельный символ или последовательность символов | Одно из двух логических значений |
| Примеры допустимых действий | Сложение, вычитание, умножение, сравнение | Арифметические действия, сравнение | Сравнение, соединение строк | Логические операции И, ИЛИ, НЕ |
| Пример использования в алгоритме | Число учеников в классе | Средняя температура | Имя пользователя | Проверка, достигнута ли цель |
Пользуйся таблицей, когда выбираешь тип: сначала определи смысл данных, затем найди подходящую строку и проверь допустимые значения. Учитывай не только исходные данные, но и возможный результат вычислений. Например, среднее целых чисел может оказаться дробным, поэтому для него подходит вещественный тип.
Условие: составить алгоритм вычисления периметра прямоугольника по введённым целым длинам сторон a и b. Периметр — это сумма длин всех сторон, поэтому противоположные стороны учитываются дважды. Исходные величины a и b имеют целый тип, а для результата p также достаточно целого типа. Запишем алгоритм, который получает данные и показывает ответ.
Ответ: алгоритм вводит a и b, присваивает p значение 2 * (a + b) и выводит p. Для сторон 5 и 3 периметр равен 16.
Условие: ввести два целых числа a и b и вычислить их среднее арифметическое. Среднее находят делением суммы чисел на два. Хотя оба исходных значения целые, результат может иметь дробную часть: например, у чисел 4 и 5 среднее равно 4,5. Поэтому результату нужна вещественная величина, а запись деления должна сохранять дробную часть.
Ответ: алгоритм вычисляет m := (a + b) / 2 и выводит вещественный результат. Для чисел 4 и 5 это 4,5.
Условие: по введённым цене одного товара c и количеству товаров n вычислить стоимость покупки. Цена может быть дробной, а количество обычно задаётся целым числом. Общая стоимость равна произведению цены на количество. Разделение действий на ввод, вычисление и вывод позволяет легко проверить, какие данные использованы и где получен ответ.
Ответ: алгоритм вводит c и n, вычисляет s := c * n и выводит s. При цене 12,5 и количестве 4 стоимость равна 50.
Ошибка: считать, что величина хранит все прежние значения. При каждом присваивании новое значение заменяет старое, но это легко упустить, если следить только за формулой, а не за ходом алгоритма. Проверь себя, выписав значения величины после каждой команды. Если старое значение понадобится позднее, сохрани его в другой величине.
Ошибка: выбрать целый тип для результата, который может быть дробным. Это часто происходит, когда исходные числа целые, и кажется, что результат тоже обязательно целый. Проверь возможные значения на примере: среднее чисел 4 и 5 равно 4,5. Для такого результата выбирай вещественный тип и подходящее деление.
Ошибка: принимать знак присваивания за знак равенства в математике. Равенство утверждает, что две стороны имеют одинаковое значение, а присваивание выполняет команду и меняет величину слева. Например, x := x + 1 не является обычным равенством: алгоритм увеличивает текущее x на единицу. Чтобы проверить понимание, прочитай команду словами: «вычислить правую часть и записать её в x».
Ошибка: записывать выражение без нужных скобок или не учитывать порядок действий. Такое происходит, когда запись с виду похожа на привычную формулу, но алгоритм выполняет операции по правилам приоритета. Например, a + b * c сначала умножает b на c. Подставь простые числа и сравни вычисление с условием задачи; если порядок не совпадает, поставь скобки.
Для работы с величинами нужны знания о построении алгоритмов и записи арифметических выражений: иначе нельзя точно описать вычисления. Типы связаны с тем, как данные представляются и хранятся в памяти компьютера. Понимание имён и присваивания пригодится при составлении программ, а проверка значений по шагам — при их отладке, то есть поиске и исправлении ошибок. Эти навыки используют в задачах на вычисление и обработку данных.
Чем величина отличается от её значения?
Величина — это именованное место для хранения данных, а значение — данные, которые находятся в нём в данный момент. Например, у величины n может быть значение 12, а после присваивания — 15.
Зачем указывать тип величины?
Тип сообщает, какие данные можно хранить и какие действия допустимы. Он помогает алгоритму правильно обрабатывать числа, текст или логические значения.
Почему после присваивания прежнее значение исчезает?
Величина хранит текущее значение, а команда присваивания записывает в неё новое вместо старого. Если прежнее значение нужно сохранить, для него используют другую величину.
Как выбрать тип для результата вычисления?
Нужно заранее определить, какие значения может получить результат. Если возможна дробная часть, выбирают вещественный тип, даже когда исходные данные целые.
В каком порядке вычисляются действия в выражении?
Сначала выполняют действия в скобках, затем умножение и деление, после них — сложение и вычитание. Действия одного приоритета выполняют слева направо, если скобки не задают иной порядок.
§ 9. Алгоритмы работы с величинами