
- •Что такое программа?
- •Каковы основные системы программирования?
- •Перечислите основные этапы развития языков программирования.
- •Перечислите основные алгоритмические структуры и опишите их.
- •Каковы основные принципы разработки алгоритмов?
- •Назовите основные этапы составления алгоритмов.
- •Приведите пример, реализующий этапы алгоритмизации.
Приведите пример, реализующий этапы алгоритмизации.
Рассмотрим задачу с достаточно сложным алгоритмом решения для того, чтобы, во-первых, продемонстрировать этапы 1 - 3 рассмотренной методики и, во-вторых - принцип поэтапной детализации алгоритма.
Постановка задачи. Существует способ обойти шахматным конем доску, побывав на каждом поле по одному разу. Построить алгоритм обхода доски.
Идея решения задачи. Очередной ход следует делать на то поле, с которого на другие поля меньше всего ходов.
Формализация задачи. Назовем термином "потенциал поля" количество допустимых ходов коня. Введем следующие обозначения:
С — матрица 8*8, содержащая потенциалы полей (фрагмент C показан на рис. 13);
R — матрица 8*8, содержащая решение задачи в виде номеров ходов коня;
Sx, Sy — массивы из 8 элементов, содержащие смещения коня относительно текущей координаты, необходимые для реализации правила буквы "Г":
Sx = ( 1, 2, 2, 1,-1,-2,-2,-1);
Sy = (-2,-1, 1, 2, 2, 1,-1,-2).
x, y — текушие координаты коня;
x1,y1 — координаты поля с минимальным потенциалом для текущих (x, y);
m — значение минимального потенциала допустимого поля.
Будем учитывать пройденные поля путем задания соответствующим элементам матрицы C значения 9, т.е. значения вне множества допустимых потенциалов.
Каковы основные этапы решения задач с помощью ЭВМ? Дайте характеристику каждому этапу.
ЭВМ никаких решений не принимает. Решение принимает человек, а ЭВМ только помогает найти варианты решении. Что же нужно сделать чтобы найти такие варианты решении? Основные этапы решения задачи проектирования технологических установок. Рассмотрим эти этапы.
Выбор задачи. Выбор задачи -- важнейший вопрос. Решение задачи, особенно достаточно сложной, -- это очень трудное дело требующее много времени. И если задача выбрана неудачно, то это может привести не только к сожалению о потерянном времени.
Выбор задачи завершается ее содержательной постановкой. Когда выбирается задача и производится ее содержательная постановка, естественно, приходится иметь дело со специалистами в предметной области (по управлению, проектированию, разработке технологических процессов) Эти специалисты, как правило, очень добросовестные, с одной стороны, прекрасно знают свой предмет, с другой -- не всегда имеют представление о том, что требуется для решения задачи на ЭВМ. Поэтому содержательная постановка задачи зачастую оказывается перенасыщенной сведениями, которые совершенно излишни для работы на ЭВМ.