Читайте также:
|
|
16. Приложение определяет количество черных квадратов на черно-белом рисунке, содержащем некоторое количество квадратов, со сторонами, параллельными осям координат. Размер квадрата не менее 2 пиксела.
17. Изображение содержит несколько пересекающихся черных линий на белом фоне. Определить координаты точек пересечений линий.
18. Заменить черные квадраты на красные. Размер квадрата не менее 2 пиксела.
19. Определить количество использованных в изображении цветов и вывести информацию в виде таблицы «R» «G» «B» «Количество» «Образец»
20. Реализовать следующее игровое приложение. В окне программы в случайных местах на 1 сек возникает точка. Если в это время пользователь успевает щелкнуть в окрестности точки радиусом 20, то он получает премиальное очко и вокруг точки, где он щелкнул, возникает окружность радиусом 50 и она остается видна в течение 10 сек. Случайные точки могут появляться только в местах, где в данный момент нет ни одной окружности на расстоянии менее 50 пикселей. Игра заканчивается, когда новой случайной точке негде возникнуть.
21. Реализовать прокрутку объектов на экране. Объекты являются геометрическими фигурами (точки, линии, прямоугольники и др.). Объекты хранятся в постоянном хранилище (сериализация, реляционная или объектная база данных). В оперативную память загружаются только те объекты, которые попадают, хотя-бы частично, в видимую на экране часть плоскости.
22. Изменить яркость изображения. Во-избежание «замирания» GUI использовать BackgroundWorker.
23. Найти на изображении квадрат 50х50, в котором больше всего красных точек. Во-избежание «замирания» GUI использовать BackgroundWorker.
24. В окне программы имеется прямоугольное поле, в котором на расстоянии 100 пикселей друг от друга прочерчены параллельные горизонтальные линии. Программа «рассыпает» в этом поле много отрезков длиной 100 пикселей. Положение и угол наклона этих отрезков случайны. Определить количество пересечений между этими отрезками и параллельными линиями. Экспериментально проверить, нет ли зависимости между этим количеством и числом p.
25. В окне программы имеется прямоугольное поле, в котором программа рисует множество отрезков длиной 100 пикселей. Положение и угол наклона этих отрезков случайны. Программа должна закрасить одинаковыми цветами «почти параллельные» отрезки (угол между которыми не превышает небольшого заданного значения.
26. Реализовать программу с простой мультипликацией. Кадры для мультфильмов - графические файлы в выбираемом пользователем каталоге. Реализовать показ в прямом и обратном направлении и управление количеством кадров в секунду. Во-избежание «замирания» GUI использовать BackgroundWorker.
27. Реализовать программу «Автомобильная гонка». В окне программы загружается изображение, содержащее лабиринт из черных линий, точку старта и область финиша. В начале гонки в точке старта появляется условное изображение автомобиля в виде небольшой окружности. Далее нужно провести автомобиль в область финиша, не дотронувшись до черных линий. Управление осуществляется клавишами-стрелками: вверх – ускорение, вниз – торможение, влево и вправо. В конце программа показывает затраченное время.
Сложные задачи
1. Реализовать приложение «Геометрические фигуры» со следующими возможностями:
o Создание нескольких видов фигур (точек, линий, прямоугольников, треугольников, окружностей, многоугольников). Предусмотреть два режима создания фигур: визуальный и текстовый.
o Для каждого типа фигуры определять и задавать некоторые дополнительные характеристики. Например, точка может являться визуальным представлением населенного пункта и для нее можно определить численность населения.
o Сохранение и загрузка всех фигур. (Реализовать несколько способов – сериализация, реляционная БД, объектная база данных).
o Загрузка и показ фигур, соответствующих некоторому критерию.
2. Написать программу, демонстрирующую основные операции со стандартными структурами данных. Структуры данных: стек, односвязный список, двухсвязный список, очередь. Операции: добавление элемента, удаление элемента, поиск элемента. Программа должна сохранять состояние структуры данных и загружать его для дальнейшей работы. Программа должна визуально показывать состояние структуры данных. Операции над структурами данных должны выполняться в двух режимах – визуальном и текстовом.
3. Написать программу для работы с графами. Она должна обеспечивать базовые операции с графами: добавление узла, удаление узла, определение инцидентных узлов. Показ графа должен осуществляться двумя способами: в графическом режиме и в виде матрицы инцидентности. Операции над графами также выполняются как в графическом режиме так и с помощью команд в текстовых полях, списках и кнопках. Обеспечить сохранение и загрузку графов в постоянном хранилище.
4. Разработать программу, осуществляющую подготовку учебного материала для обучающей системы вопросно-ответного типа. Предусмотреть вопросы, имеющие как один, так и несколько правильных ответов. Реализовать основные операции для вопросов и ответов – добавление, удаление и изменение. Реализовать хранение и загрузку предыдущих результатов.
5. Реализовать программу, осуществляющую тестирование на основании учебной информации, подготовленной вручную или с помощью предыдущей программы. Программа должна осуществлять тест зарегистрировавшегося учащегося с выставлением ему оценки в конце теста. Реализовать несколько разновидностей тестов. Все разновидности тестов происходят в одинаковом визуальном стиле, а отличаются другими не визуальными параметрами. Сохранять результаты тестирования.
6. Реализовать программу «Справочная служба» позволяющую хранить и использовать информацию о телефонах и адресах частных лиц. Программа дает возможность добавлять, удалять и изменять имена, адреса и телефоны людей, производить поиск по номеру телефона и имени. У одного человека может быть несколько телефонных номеров. Обеспечить хранение информации в базе данных.
7. Реализовать программу «Конструктор HTML-документов», автоматизирующий создание правильных Web-страниц. В этой программе информационное содержимое и служебная информация (теги), должны храниться отдельно (не в «монолитном» текстовом файле). В результате такого отделения программа позволяет, имея Web-страницу на русском языке, создать ее аналог на английском языке. Для этого предусмотреть соответствующую форму постоянного хранения и визуальный способ управления содержимым HTML-документа.
8. Создать программу – UML-редактор, позволяющий конструировать статические диаграммы классов. Для класса предусмотреть возможность определения его имени и отношение наследования. С диаграммой можно работать как в графическом режиме, так и в текстовом. При этом можно осуществлять следующие операции: добавление и удаление класса, определение базового класса, изменение имени класса, редактирование элементов класса (переменных и методов). Обеспечить хранение и загрузку диаграмм.
9. Реализовать программу для игры в шашки двух человек. Реализовать два способа управления игрой – графический и текстовый. Реализовать хранение и загрузку в постоянном хранилище.
10. Реализовать программу для игры в шахматы двух человек. Реализовать два способа управления игрой – графический и текстовый. Реализовать хранение и загрузку в постоянном хранилище.
11. Реализовать простой табличный процессор, обеспечивающий основные операции с табличными данными: ввод и изменение данных в таблице. Реализовать представление данных в таблице с помощью столбиковой диаграммы. Ввод и изменение данных могут осуществляться как непосредственно в табличном, так и в диаграммном представлении мышью. Реализовать хранение и загрузку в постоянном хранилище и позволяет просматривать в табличной форме статистику продаж за день.
12. Реализовать программу «Органайзер» с основными операциями над делами: добавление, удаление, изменение. Должно быть реализовано несколько визуальных представлений (например, на неделю, на один день, на месяц). Реализовать хранение и загрузку в постоянном хранилище.
13. Реализовать программу, помогающую оптимизировать наклейку кусочков обоев произвольной формы на вертикальной стене также произвольной формы. Программа должна показывать раскладку кусочков обоев на стене, и показывать текущую не закрытую площадь стены и текущую площадь взаимного пересечения обоев. Должны быть реализованы функции создания кусочков обоев, из перемещения на стене (в графическом и текстовом режиме) и хранения всего состояния в постоянной памяти.
14. Реализовать программу, моделирующую работу простого магазина. Имеется магазин, располагающий множеством товаров из общего перечня, в котором определено наименование и стоимость каждого товара. Модель магазина позволяет покупателю а) просматривать перечень имеющихся товаров и их количества («Витрина») и б) осуществлять покупку множества товаров. Программа реализует хранение состояния магазина в результате осуществления завершенных покупок.
15. Реализовать программу, моделирующую соревнования по футболу. В начале 16 команд разбиты на 4 подгруппы, в которых они должны сыграть друг с другом по одному разу. На этом этапе – 3 тура и могут быть ничьи. Предусмотреть критерий определения двух лучших команд в подгруппе. Затем оставшиеся 8 команды играют 3 тура по олимпийской системе для выявления одной команды-победителя. Предусмотреть режим формирования начального списка команд, показ и ввод результатов игры в двух видах – графическом (таблица, дерево) и на основе простых элементов управления (списки, поля ввода, кнопки). Реализовать сохранение результатов в постоянной памяти. Программа также позволяет определить команду-победителя, лучшего бомбардира и общую статистику для каждой команды.
16. Программа для коммивояжера. Программа должна помочь коммивояжеру проехать через 10 пунктов по кратчайшему маршруту. В начале программа показывает 10 точек в случайных местах карты. Эти точки соединены последовательностью линий (маршрутом). Программа позволяет пользователю изменять последовательность посещения пунктов в графическом и текстовом режиме, показывая всякий раз текущую длину маршрута. Программа сохраняет наилучшие маршруты в постоянной памяти.
17. Разработать программу, аналогичную основным возможностям мастера диаграмм в MS Excel.
18. Реализовать множество классов, на основе которого создать две программы для двух различных карточных игр.
Дата добавления: 2015-10-02; просмотров: 53 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Анализ файловой системы | | | Свободные радикалы |