Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Варианты заданий курсовых работ.doc
Скачиваний:
6
Добавлен:
02.04.2015
Размер:
370.18 Кб
Скачать

Варианты усложнённых заданий

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

  2. Площадь комнаты разделена на 6 квадратов, пять из которых заняты мебелью, шестой – свободен (см. рис.6). Переставить мебель так, чтобы шкаф и кресло поменялись местами. Два предмета в одном квадрате находиться не могут. Результат изобразить графически в динамике.

стол

стул

Шкаф

стул

кресло

Рис. 6 Пример первичной расстановки мебели

  1. «Шарики в лунках». Вдоль доски расположены 7 лунок, в которых лежат 3 черных и 3 белых шара так, как показано на рис.4

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

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

  1. Поиска

  2. Включения

  3. Исключения

  1. Игра «кубик в лабиринте» На прямоугольном поле из X на Y квадратных клеток находится кубик со стороной, равной длине стороны клетки. За один ход куб может перекатываться через ребро, перемещаясь на соседнюю по вертикали или по горизонтали клетку. Между некоторыми клетками могут стоять стенки, которые являются препятствиями. Куб не может перекатываться через препятствия. куб не может также покидать пределы поля.

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

Ограничения: Все числа натуральные; 2≤X, Y≤10;

Продумайте формат входонго файла. Он должен содержать размеры поля X (по горизонтали) и Y (по вертикали); А и В, C и D.

Может иметься (а может и не нет) информация о стенках. Например, после специального символа (допустим, "v"), перечисляются пары чисел, говорящие о вертикальных стенках. Здесь пара чисел N и M определяет стенку между клетками N,M и N+1, M

Таким же образом после символа, например, "h", перечисляются пары чисел, говорящие о горизонтальных стенках. Пара чисел N и M определяет стенку между клетками N,M и N, M+1.

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

  1. Генеалогическое дерево. Организовать генеалогическое дерево в виде многосвязного списка. Написать процедуры, позволяющие:

  • добавлять элементы, устанавливая родственные связи;

  • осуществлять поиск элемента по имени и по родственным связям;

  • распечатывать ветвь дерева, начиная с какого- либо элемента, а также дерево целиком.

  • Организовать прорисовку графа, используя список смежностей как начальные исходные данные (см. условие задачи 23). Разработать интерактивный режим, позволяющий пользователю влиять на процесс прорисовки, например, указывать «мышкой» положение какой-то вершины графа на экране. Разрешается запрашивать у пользователя необходимую информацию, касающуюся расположения графика на экране. Результат процесса прорисовки (координаты вершин) должен сохраняться в памяти.