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

28.1. Постановка задачи (этап 1)

"Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович

Объяснение темы В оглавлении: 28.1. Постановка задачи (этап 1)

Кратко о теме

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

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

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

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

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

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

Результативные данные — сведения, которые требуется получить в результате решения. Это может быть одно число, несколько величин или текстовый ответ. Их точное описание позволяет определить, какой результат должна выдать программа.

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

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

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

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

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

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

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

Что определяют при постановке задачи

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

Заполняй таблицу, читая условие и отдельно отвечая на вопрос каждого столбца. Если для какого-то элемента сведений нет, проверь, не нужно ли уточнить условие или явно записать, что ограничений не задано. После заполнения должно быть понятно, что программа получает и что обязана выдать.

Разбор задач

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

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

  1. Записываем исходные данные: длина a и ширина b. Это размеры прямоугольника, которые задаются до вычисления.
  2. Определяем результат: площадь S. Для прямоугольника она вычисляется по формуле S = a · b.
  3. Учитываем ограничения: длина и ширина должны быть положительными. Если величины заданы в сантиметрах, площадь получится в квадратных сантиметрах.

Ответ: входные данные — положительные длина и ширина, результат — площадь S = a · b. Единицы результата должны быть квадратными. Такое описание уже показывает, что вводить и что выводить.

Средний балл по трём оценкам

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

  1. Обозначаем оценки как a, b и c. Все три числа являются исходными данными, потому что они известны до вычисления.
  2. Определяем результат: среднее арифметическое x = (a + b + c) / 3. Делим сумму на три, поскольку оценок ровно три.
  3. Учитываем ограничения: требуется обработать именно три оценки. Если условие задаёт допустимый диапазон оценок, его также нужно указать; нельзя без основания менять число значений.

Ответ: исходные данные — три оценки, результативные данные — их среднее арифметическое. Формулировка числа оценок как ограничения не даёт спутать эту задачу с поиском среднего по произвольному набору. Результат не обязан совпадать с одной из исходных оценок.

Расстояние между точками

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

  1. Записываем исходные данные как пары координат: A(x₁, y₁) и B(x₂, y₂). Каждая координата известна до решения и описывает положение одной точки.
  2. Определяем результат: расстояние d между точками. Его находят по формуле d = √((x₂ − x₁)² + (y₂ − y₁)²).
  3. Проверяем ограничения и смысл вычисления: координаты должны быть допустимы для выбранного типа данных, а результат неотрицателен. Выражение под корнем даёт квадрат расстояния, поэтому для самого расстояния нужно извлечь квадратный корень.

Ответ: входом служат координаты двух точек, выходом — расстояние между ними. Если вывести только (x₂ − x₁)² + (y₂ − y₁)², будет найден квадрат расстояния, а не то, что просит условие. Явное описание результата помогает заметить эту подмену ещё до написания программы.

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

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

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

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

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

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

Для постановки задачи нужно внимательно читать условие, отличать известные величины от неизвестных и понимать их смысл. Затем на основе постановки строят математическую модель, алгоритм и программу: каждый следующий этап опирается на предыдущий. Чёткое описание входных и выходных данных помогает при тестировании, потому что заранее известно, какие значения подавать и какой результат ожидать. Если проверка показывает расхождение, можно выяснить, неверна ли постановка, алгоритм или программа.

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

  • Постановка задачи — первый этап решения задачи на компьютере.
  • Сначала выясняют цель, затем определяют исходные и результативные данные.
  • Ограничения задают допустимые значения данных.
  • Исходные данные программа получает, результативные — формирует.
  • Требуемый результат должен быть сформулирован однозначно.
  • Без ясной постановки нельзя надёжно составить и проверить алгоритм.

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

Зачем формулировать постановку задачи, если условие уже дано?

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

Чем исходные данные отличаются от результативных?

Исходные данные известны до решения и поступают на вход программы. Результативные данные — это то, что программа должна вычислить или сформировать.

Нужно ли указывать ограничения на входные данные?

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

Могут ли результативные данные совпадать с исходными?

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

Как понять, что задача поставлена достаточно точно?

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

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

28.1. Постановка задачи (этап 1)

Эта же тема в других учебниках

21.1. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович 22.1. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович 23.1. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович 24.1. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович 25.4. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович 27.1. Постановка задачи (этап 1) "Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович

Учебник

Оглавление →
Предмет
Информатика
Класс
9 класс
Учебник
"Информатика. Учебное пособие для учреждений общего среднего образования с русским языком обучения", В. М. Котов, А. И. Лапо, Ю.А. Быкадоров, Е.Н. Войтехович