Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа 2012 / Задания для Курсовой работы.doc
Скачиваний:
37
Добавлен:
07.06.2015
Размер:
759.3 Кб
Скачать

Задания для Курсовой работы

  1. Написать программу, в которой рекурсивный алгоритм решения задачи “Ханойские башни” отображается графически.

  2. Разработать программу, которая обеспечивает рисование снежинки, число звеньев и количество ветвей которой задаются пользователем.

  3. Задача о разрезании прямоугольника. Из листа клетчатой бумаги размером M*N клеток вырезали образующие некоторые фигуры клетки. Линии разреза совпадают с границами клеток. Определить количество вырезанных фигур.

  4. Обеспечить графический вывод изображения цветочного поля, на котором случайное количество цветков сначала “расцветают” (появляются), а затем “увядают” (исчезают).

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

  6. . Обеспечить графическое представление решения следующей задачи. В некотором населенном пункте при движении по дорогам запрещены левые повороты (развороты при этом не запрещены). За каждый поворот налево установлен штраф в 100 руб. За движением автомобилей ведется компьютерное слежение, в результате чего фиксируются координаты автомобиля в начале и конце его движения, а также в те моменты, когда автомобиль выполняет какой-либо поворот. Написать программу, которая по заданной пользователем последовательности координат движения автомобиля выводит маршрут движения (обозначая пункты движения), отмечает пункты нарушений и вычисляет штраф его водителю.

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

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

  9. . Составить программу, которая позволяет игроку самостоятельно находить выход из лабиринта. Условия: 1) пусть прямоугольное клеточное поле (размером NxN, число N определяется при помощи генератора случайных чисел или зависит, оно должно быть больше 10) ограничено препятствиями; 2) кроме того, случайным образом на поле задается произвольная система препятствий, начальная клетка и конечная клетка; 3) при попытках игрока сделать неверный шаг программа должна информировать его об этом и не позволять изменять текущую позицию. Отметим, что в программе следует предусмотреть режим, позволяющий игроку узнать правильное (или одно из правильных) решение задачи о выходе из данного лабиринта, для чего программа должна уметь сама определять этот маршрут, если он существует.

  10. Дано поле NxM клеток (размеры задаются произвольно) – участки болота. Некоторые клетки – кочки (их местоположение определяется при помощи генератора случайных чисел). На одной из кочек сидит лягушка (ею будет управлять игрок, указывая мышью место, куда она будет прыгать). Над одной из клеток летает комар (он управляется программой). Первый ход за лягушкой – она может прыгать с кочки на кочку по горизонтали, вертикали или диагоналям, максимальная длина прыжка – 5 клеток. Если лягушка попадает в воду, она плывет до ближайшей кочки (это должно автоматически выполняться программой). Комара лягушка может съесть в полете или если он сам залетит на ее клетку. После каждого хода лягушки следует ход комара. За один ход комар случайным образом перемещается на одну из клеток вокруг его предыдущего положения. Как только лягушка настигнет комара, программа выдает сообщение и прекращает свою работу.

  11. Написать программу, которая позволяет игроку управлять змеей, движущейся по прямоугольному полю, на котором иногда появляются призы и ловушки. Программа начинается с изображения короткой змеи, медленно ползущей по экрану в произвольном направлении. Направлением движения змеи можно управлять с помощью клавиш-стрелок (после этого она начинает ползти в заданном направлении, причем каждый участок ее тела должен пройти через точку поворота). Функцию получения кода нажатых управляющих клавиш см. ниже. Цель игры - удержать змею в границах игрового поля и от пересечения собственного тела. Время от времени на случайном месте поля появляются некоторые изображения – призы и ловушки. Змея голодна и не прочь подкрепиться призами - если змея съест приз, то ее тело вырастает на одну секцию. Ловушки же змея должна избегать - если змея попадет в ловушку, то ее тело уменьшается на одну секцию. Если змея ударилась о границу поля, пересекла собственное тело или длина ее тела стала равной нулю, выдать сообщение и прекратить работу программы.

  12. . Дано поле NxM клеток (размеры задаются произвольно). На одной случайно выбранной клетке находится кошка (ею будет управлять игрок, указывая направление ее шага, длина шага – 3 клетки), ее задача поймать мышку. Мышка находится на другой случайной клетке (ею управляет программа, длина ее шага – 1 клетка). После каждого хода кошки следует ход мышки. За один ход мышка должна перебежать на одну из клеток вокруг ее предыдущего положения так, чтобы оказаться как можно дальше от кошки. Как только кошка настигнет мышку, программа выдает сообщение и прекращает свою работу.

  13. . Дано поле размер 4x4 клетки. В каждой клетке (за исключением клетки с индексами (4,4)) располагается фишка. Каждая фишка имеет свой уникальный номер от 1 до 15. Игрок должен передвинуть фишки так, чтобы все фишки выстроились по порядку от 1 до 15. Передвижение фишек должно реализовываться следующим образом: сначала игрок мышкой указывает, какую фишку он хочет передвинуть, затем программа определяет правильность его хода и передвигает выбранную фишку на свободное место. Программа должна анализировать действия игрока и, как только игрок правильно выстроит все фишки, она должна выдать сообщение и прекратить свою работу.

  14. Написать программу “Прыгающий шарик”. После запуска программы на экране должна отображаться отцентрированная текстовая строка, а также шарик, прыгающий по буквам строки по траектории в виде полукруга. При движении шарик вызывает изменение цвета текущей буквы, а также выдачу короткого звукового сигнала. Программа должна позволять пользователем вводить текст и размер шрифта Вывод изображения должен происходить в зависимости от введенных параметров.

  15. Написать программу, которая дает возможность использовать указатель мыши как центр увеличительного стекла для увеличения фонового изображения на экране. Программа должна позволять интерактивно вводить коэффициент увеличения (2, 4, 5, 10, 20, 25) и выводить увеличенное изображение (его центр отмечает указатель мыши) в рамках области 100х100 пикселей. При движении мыши “увеличительное стекло” также должно двигаться по экрану.