"Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В.М. Котов, А.И. Лапо, Е.Н. Войтехович
Программирование помогает поручить компьютеру решение задачи: для этого условие превращают в алгоритм, а алгоритм записывают на языке программирования. Сначала выясняют, какие данные известны и что нужно найти, затем выбирают действия и задают их правильный порядок. Компьютер получает исходные данные, выполняет команды и выдаёт результат. Чтобы убедиться, что решение работает не только для одного случая, программу проверяют на нескольких примерах с известными ответами.
Текст подготовлен нейронной сетью по теме параграфа и не заменяет учебник — важные факты и формулировки сверяйте с ним.
Программирование — составление программы для решения задачи. Оно связано с разработкой алгоритма: сначала человек продумывает, какие шаги приведут к ответу, а затем переводит их в команды для компьютера. Такой порядок помогает не писать команды наугад. Алгоритм служит планом, а программирование превращает этот план в исполняемую запись.
Программа — запись алгоритма на языке программирования, которую может выполнить компьютер. У языка есть правила записи команд, поэтому важно соблюдать их так же, как правила в обычном тексте. Программа нужна, чтобы компьютер выполнил шаги решения быстро и в заданном порядке. Если запись нарушает правила языка, компьютер может не понять команду.
Исходные данные — значения, которые программа получает для решения задачи. Например, чтобы сложить два числа, в программу вводят оба числа; их можно указать при запуске или получить с клавиатуры. Эти значения называют входными, потому что с них начинается вычисление. Без необходимых исходных данных программе может быть не из чего получать ответ.
Результат программы — полученные при выполнении значения, которые соответствуют требуемому ответу задачи. Для задачи о сумме результатом будет число, выведенное после сложения исходных значений. Его нужно сравнить с тем, что спрашивалось в условии: программа может вывести значение, но не то, которое требовалось. Поэтому результат проверяют, а не просто принимают на веру.
Решение начинается с внимательного чтения условия, потому что иначе легко ответить не на тот вопрос. Нужно выписать, какие величины известны, и отдельно сформулировать, что требуется найти. Например, в задаче о прямоугольнике даны длина и ширина, а найти могут просить площадь, периметр или оба значения. Такое разделение сразу подсказывает, какие данные будут нужны программе и что должно появиться в ответе.
До написания программы составляют алгоритм — последовательность шагов решения. Это нужно, чтобы проверить саму идею без привязки к правилам конкретного языка: если шаги непонятны или пропущены, программа тоже не сможет надёжно решить задачу. Для вычисления суммы план может быть коротким: получить два числа, сложить их, показать сумму. В более сложной задаче алгоритм помогает не потерять промежуточные действия.
Затем алгоритм записывают на языке программирования, соблюдая правила команд. Выбирают подходящие величины — например, отдельные места для длины и ширины — и нужные операции, такие как сложение или умножение. Точная запись важна, потому что компьютер выполняет именно команды, а не догадывается о намерении автора. Если команда записана неверно или выбрана неподходящая операция, ответ может не появиться или оказаться неправильным.
При запуске программа получает исходные данные, выполняет команды в установленном порядке и выводит результат. Порядок нужен потому, что одни действия могут использовать значения, полученные в предыдущих шагах: нельзя вычислить ответ, пока необходимые данные ещё не введены. Ввод сообщает программе, с чем работать, а вывод показывает, что получилось. Поэтому следует заранее понимать, какие значения вводятся и какое значение программа должна вывести.
Готовую программу проверяют на примерах, для которых ответ можно определить заранее. Такая проверка нужна, чтобы заметить ошибки в алгоритме, записи команд или порядке вычислений. Если вывод не совпал с ожидаемым, следует пройти шаги алгоритма и найти место, где возникло расхождение. Несколько примеров дают более надёжную проверку, чем один, поскольку разные данные могут выявить разные ошибки.
| Этап | Что выполняют | Что получают |
|---|---|---|
| Анализ условия | Определяют, какие данные даны и что требуется найти. | Понимание входных данных и требуемого ответа. |
| Построение алгоритма | Располагают действия решения в нужном порядке. | План шагов, ведущих к ответу. |
| Запись программы | Записывают шаги командами языка программирования. | Программа, которую можно запустить. |
| Выполнение программы | Передают программе исходные данные и запускают команды. | Полученный программой результат. |
| Проверка решения | Сравнивают вывод с ожидаемым ответом на примерах. | Подтверждение правильности или найденная ошибка. |
Таблица показывает путь от понимания условия до проверки ответа. Двигайтесь по этапам по порядку: результат одного этапа подготавливает следующий. Если проверка обнаружила ошибку, вернитесь к алгоритму или записи программы и повторите проверку.
Задача 1. Составить программу, которая принимает два числа и выводит их сумму. Нужно получить именно одно значение — итог сложения, поэтому сначала отделим ввод чисел от вычисления и вывода ответа.
Ответ: алгоритм получает два числа, вычисляет a + b и выводит сумму. Пример проверки: при вводе 4 и 7 результатом будет 11.
Задача 2. По длине и ширине прямоугольника найти его периметр и площадь. Здесь требуются два результата, поэтому важно не остановиться после вычисления только одного из них. Длину обозначим a, ширину — b.
Ответ: программа вводит длину и ширину, вычисляет P и S по формулам и выводит оба значения. Для сторон 5 и 3 ожидаются периметр 16 и площадь 15.
Задача 3. По трём числам определить наибольшее и вывести его. Здесь недостаточно сложить значения: нужно сравнить их между собой и сохранить то, которое больше остальных. Проверим алгоритм на нескольких расположениях чисел, потому что наибольшее может встретиться в любом месте.
Ответ: последовательно сравнить все три числа с текущим наибольшим и вывести большее из найденных значений. Проверка с разными расположениями и равными числами помогает убедиться, что алгоритм не зависит от порядка ввода.
Начинать писать команды, не выяснив, что дано и какой ответ требуется, — значит рисковать решить другую задачу. Так происходит, когда ученик торопится перейти к компьютеру и не выделяет главные величины. Перед записью программы проверьте, можете ли вы назвать исходные данные и требуемый результат отдельными фразами.
Нарушение порядка действий приводит к тому, что вычисление использует значение, которое ещё не получено. Причина часто в том, что шаги записывают без предварительного плана. Прочитайте алгоритм по порядку и убедитесь, что к моменту каждого вычисления все нужные данные уже введены или найдены.
Путать ввод исходных данных с выводом результата — значит неверно организовать обмен с программой: нужные числа могут не поступить на вход или ответ останется незаметным. Это бывает, если не различать, что программа получает, а что сообщает пользователю. Проверьте, какие значения нужно ввести до запуска и какое значение должно появиться после выполнения.
Проверка только на одном примере не показывает, как программа справится с другими допустимыми значениями. Один удачный ответ может случайно совпасть с правильным, хотя в алгоритме есть ошибка. Подберите несколько случаев, меняя значения и их расположение, и сравните каждый вывод с ответом, полученным заранее.
Для решения программой задач нужно уметь читать условие, выполнять арифметические действия и представлять решение как последовательность шагов. Эти умения помогают перейти от словесного описания к алгоритму и проверить вычисления вручную. Освоенный порядок работы пригодится при изучении переменных — величин, в которых хранятся данные, — а также команд ввода и вывода. Позже на этой основе изучают ветвления и циклы и создают программы для практических задач.
Почему нельзя сразу переходить к написанию программы?
Сначала нужно понять, что дано и какой ответ требуется получить. Иначе можно выбрать неподходящие действия или забыть нужные данные. Алгоритм помогает заранее продумать решение.
Чем алгоритм отличается от программы?
Алгоритм — это понятная последовательность шагов для решения задачи. Программа — запись этого алгоритма на языке программирования по правилам, которые может выполнить компьютер.
Что считать исходными данными задачи?
Это значения, которые нужны программе для решения задачи и поступают на вход. Например, для вычисления суммы исходными данными будут два складываемых числа.
Как понять, что программа вывела правильный результат?
Сравните вывод с ответом, который можно заранее получить вручную для выбранных исходных данных. Также проверьте, соответствует ли результат тому, что требовалось найти по условию.
Зачем проверять программу на нескольких примерах?
Один пример может не выявить ошибку: программа иногда правильно работает для одних значений и ошибается для других. Выбирайте разные допустимые случаи, в том числе особые, например равные числа.
15.2. Использование языка программирования для решения задач