|
lesson_sp_01
|
- Разработать класс Person, который содержит соответствующие члены для хранения:
имени,
возраста,
пола и
телефонного номера.
Напишите функции-члены, которые смогут изменять эти члены данных индивидуально.
Напишите функцию-член Person::Print(), которая выводит отформатированные данные о человеке.
- Написать класс Complex, который будет реализовывать арифметические операции с
комплексными числами.
- Разработать класс String, который в дальнейшем будет использоваться для работы со
строками. Класс должен содержать:
конструктор по умолчанию, позволяющий создать строку длиной 80 символов;
конструктор, позволяющий создавать строку произвольного размера;
конструктор, который создаёт строку и инициализирует её строкой, полученной от
пользователя.
Класс должен содержать методы для ввода строк с клавиатуры и вывода строк на экран.
|
просмотреть
|
скачать ~30 KB
|
|
lesson_sp_?
|
Уже не помню что... Какие-то долги...
|
просмотреть
|
скачать ~19 KB
|
|
lesson_sp_03
|
- Создайте класс защищенного массива, в котором реализована проверка выхода
за границы массива. Перегрузите операторы: [ ], =, +, -, <<, >>
- Создайте класс Время, в котором реализованы операции сложения, вычитания, сравнения,
ввода и вывод на экран. Возможность конвертации времени из американского формата
am (pm): 10:00 pm = 22:00, 12:00 pm =00:00
|
просмотреть
|
скачать ~18 KB
|
|
lesson_sp_04
|
Создать класс для работы с матрицами. Предусмотреть, как минимум, функции для
сложения матриц, умножения матриц, транспонирования матриц, присваивания матриц
друг другу, установка и получение произвольного элемента матрицы.
Необходимо перегрузить соответствующие операторы.
|
просмотреть
|
скачать ~11.5 KB
|
|
lesson_sp_05
|
- Создать имитацию игры "однорукий бандит". Например, при нажатии кнопки "Enter"
происходит "вращение" трех барабанов (естественно, количество вращений каждого из
них выбирается случайно), на которых изображены разные значки; и если выпадает
определенная комбинация, то игрок получает какой-то выигрыш.
- Создать имитационную модель "остановка маршрутных такси". Необходимо вводить
следующую информацию: среднее время между появлениями пассажиров на остановке в
разное время суток, среднее время между появлениями маршруток на остановке в разное
время суток, тип остановки (конечная или нет). Необходимо определить:
среднее времяпребывание человека на остановке, достаточный интервал времени между
приходами маршруток, чтобы на остановке находилось не более N людей одновременно.
Количество свободных мест в маршрутке является случайной величиной.
|
просмотреть
|
скачать ~26 KB
|
|
lesson_sp_06
|
- Разработать приложение, имитирующее очередь печати принтера.
Должны быть клиенты, посылающие запросы на принтер, у каждого из которых есть
свой приоритет. Каждый новый клиент попадает в очередь в зависимости от своего
приоритета. Необходимо сохранять статистику печати (пользователь, время) в
отдельной очереди. Предусмотреть вывод статистики на экран.
- Добавить в класс "Односвязный список" следующие функции: вставка
элемента в заданную позицию, удаление элемента по заданной позиции, поиск
заданного элемента (функция возвращает позицию найденного элемента в случае
успеха или NULL в случае неудачи).
|
просмотреть
|
скачать ~26 KB
|
|
lesson_sp_07
|
Реализовать базу данных ГАИ по штрафным квитанциям с помощью бинарного дерева.
Ключом будет служить номер автомашины, значением узла - список правонарушений.
Если квитанция добавляется в первый раз, то в дереве появляется новый узел,
а в списке данные по правонарушению; если нет, то данные заносятся в существующий
список. Необходимо также реализовать следующие операции:
- Полная распечатка базы данных (по номерам машин и списку
правонарушений, числящихся за ними)
- Распечатка данных по заданному номеру
- Распечатка данных по диапазону номеров
|
просмотреть
|
скачать ~12.4 KB
|
|
lesson_sp_08
|
- В примере раздела "Виртуальные функции", используется базовый класс vehicle.
Перепишите программу таким образом, чтобы класс vehicle был абстрактным.
- Создать абстрактный базовый класс Employer (служащий) с чисто виртуальной функцией
Print(). Создайте три производных класса: President, Manager, Worker. Переопределите
функцию Print() для вывода информации, соответствующей каждому типу служащего.
|
просмотреть
|
скачать ~24 KB
|
|
lesson_sp_09
|
- Написать функцию вычисления значения по заданной строке символов,
являющихся записью этого числа в десятичной системе счисления.
Предусмотреть случай выхода за границы диапазона определяемого типом int.
Используйте механизм исключений.
- Перепишите класс stack одного из предыдущих домашних заданий таким образом,
чтобы генерировать исключения для такого количества условий, какое Вы считаете
приемлемым. (Например, невозможность выделить нужное количество памяти,
переполнение стека и т.д.)
|
просмотреть
|
скачать ~9 KB
|
|
lesson_sp_10
|
- Разработать приложение, созданное на основе диалогового окна.
- Пользователь "щелкает" левой кнопкой мыши по форме и, не отпуская кнопку,
ведет по ней мышку, а в момент отпускания кнопки по полученным координатам
прямоугольника (вам, конечно, известно, что двух точек на плоскости достаточно
для создания прямоугольника) необходимо создать "статик", который содержит
свой порядковый номер (имеется в виду порядок появления на форме).
- Минимальный размер "статика" составляет 10х10, при попытке создания элемента
меньших размеров пользователь должен увидеть соответствующее предупреждение.
- При щелчке правой кнопкой мыши над поверхностью "статика" в заголовке окна должна
появиться информация о его площади и координатах (относительно формы). В случае, если
в точке щелчка нажодится несколько "статиков", то предпочтение отдается "статику"
с наибольшим порядковым номером.
- При двойном щелчке левой кнопки мыши над поверхностью "статика" он
должен исчезнуть с формы (для этого можно воспользоваться функцией DestroyWindow(),
вызывая ее для соответствующего объекта "статика"). В случае, если в точке щелчка
нажодится несколько "статиков", то предпочтение отдается "статику"
с наименьшим порядковым номером.
- Разработать приложение "убегающий статик" :). Суть приложения: на форме
расположен статический элемент управления ("статик"). Пользователь пытается
подвести курсор мыши к "статику", и, если курсор находиться близко со статиком,
элемент управления "убегает". Предусмотреть перемещение "статика" только в
пределах диалогового окна.
|
просмотреть
|
скачать ~84 KB
|
|
lesson_sp_11
|
- Вывести на экран свое (краткое !!!) резюме с помощью последовательности MessageBox'ов
(числом не менее трех). Причем на заголовке последнего должно отобразиться среднее
число символов на странице (общее количество символов в резюме / количество MessageBox'ов).
- Написать функцию, которая "угадывает" задуманное пользователем число от 1 до 2000.
Для запроса к пользователю использовать MessageBox. После того, как число отгадано,
необходимо вывести количество запросов, потребовавшихся для этого, и предоставить
пользователю возможность сыграть еще раз, не выходя из программы. (MessageBox'ы
оформляются кнопками и значками соответственно ситуации).
- Представьте, что у вас на форме есть прямоугольник, границы которого на 10 пикселей
отстоят от границ рабочей области формы.
|
просмотреть
|
скачать ~83 KB
|
|
lesson_sp_12
|
- Разработать приложение, созданное на основе диалогового окна.
- Пользователь "щелкает" левой кнопкой мыши по форме и, не отпуская кнопку,
ведет по ней мышку, а в момент отпускания кнопки по полученным координатам
прямоугольника (вам, конечно, известно, что двух точек на плоскости достаточно
для создания прямоугольника) необходимо создать "статик", который содержит свой
порядковый номер (имеется в виду порядок появления на форме).
- Минимальный размер "статика" составляет 10х10, при попытке создания элемента
меньших размеров пользователь должен увидеть соответствующее предупреждение.
- При щелчке правой кнопкой мыши над поверхностью "статика" в заголовке окна
должна появиться информация о его площади и координатах (относительно формы).
В случае, если в точке щелчка нажодится несколько "статиков", то предпочтение
отдается "статику" с наибольшим порядковым номером.
- При двойном щелчке левой кнопки мыши над поверхностью "статика" он должен
исчезнуть с формы (для этого можно воспользоваться функцией DestroyWindow(),
вызывая ее для соответствующего объекта "статика"). В случае, если в точке щелчка
нажодится несколько "статиков", то предпочтение отдается "статику" с наименьшим
порядковым номером.
- Разработать приложение "убегающий статик" :). Суть приложения: на форме расположен статический элемент управления ("статик"). Пользователь пытается подвести курсор мыши к "статику", и, если курсор находиться близко со статиком, элемент управления "убегает". Предусмотреть перемещение "статика" только в пределах диалогового окна.
|
просмотреть
|
скачать ~84 KB
|
|
lesson_sp_13
|
- Написать программу, которая по введенной дате определяет день недели.
Результат выводить в текстовое поле (желательно по-русски).
- Написать программу, вычисляющую сколько осталось времени до указанной даты
(дата вводится с клавиатуры в Edit). Предусмотреть возможность выдачи результата в
днях, минутах, секундах. Для переключения между вариантами желательно использовать
переключатели (RadioButton).
- Написать игру "Пятнашки", учитывая следующие требования:
- Реализовать для пользователя возможность "сыграть еще раз"
- Предусмотреть автоматическую перестановку "пятнашек" в начале новой игры
- Выводить время, за которое пользователь окончил игру (собрал "пятнашки")
|
просмотреть
|
скачать ~119 KB
|
|
lesson_sp_14
|
- Создать приложение, у которого на форме находится один список (ListBox) и три
переключателя (RadioButton). В список заносится от 10 до 20 случайных чисел в
диапазоне от -10 до 10 (0 не включается). Переключатели обеспечивают отображение
пользователю суммы чисел, произведение чисел, среднее арифметическое чисел.
- Создайте на форме элемент управления CCheckListBox и заполните его названиями
следующих элементов управления: надпись, кнопка, текстовое поле, комбинированный
список, список. Когда пользователь ставит "галочку" на какой-либо строчке, то
соответствующий элемент управления должен динамически создаваться и отображаться на форме.
При снятии "галочки" соответствующий элемент управления уничтожается (естественно,
с формы он исчезнет самостоятельно).
|
просмотреть
|
скачать ~86 KB
|
|
lesson_sp_15
|
- Создать приложение, которое при запуске загружает в два списка (ListBox) названия книг
и их авторов (список книг и авторов желательно хранить в файле или в файлах).
На форме также должен присутствовать элемент выпадающий список (ComboBox),
в котором пользователь может выставить фильтр на отображение книг и авторов.
Варианты фильтров: все книги и авторы, фильтр по каждому автору (отображаются
только книги, принадлежащие данному автору).
- Создать приложение, которое осуществляет поиск заданного слова (словосочетания)
в заданном файле (файлах) и выводит в список наименование файла и позицию(-и)
заданной фразы в нем.
- Написать простейший вариант записной книжки.
- Записная книжка должна хранить ФИО человека, его адрес и телефон.
- Необходимо обеспечить возможности добавления, удаление и модификации записей.
- Для ввода новых данных и модификации данных необходимо использовать вспомогательную форму,
причем для модификации предусмотреть вызов вспомогательной формы с полями, заполненными
текущими значениями (текущие значения берутся из той записи, которая на данный момент
выделена).
- Вызов режима модификации продублировать с помощью двойного щелчка мыши по списку.
- Если для хранения данных используется более одного списка, то после выбора
какого-либо элемента списка необходимо обеспечить возможность выделения соответствующих
элементов в других списках.
- Обеспечить возможность сохранения данных в файл и загрузку данных из файла.
- Дополнить проект Find (файловый менеджер).
- Необходимо сохранять настройки онка: выбранный диск, стиль сортировки, текущий путь
(например, если последний путь был c:\a\b , то при следующем запуске программы необходимо
стартовать от данного пути, если он еще существует).
- Добавьте на форму несколько переключателей (Radio), с помощью которых должна
осуществляться сортировка файлов и папок в списке. Сортировка должна производиться:
по имени (по умолчанию), по времени создания, по времени последней модификации.
Причем, каталоги всегда отображаются до файлов.
- Реализовать функцию подсчета размера каталога.
|
просмотреть
|
скачать ~143 KB
|
|
lesson_sp_16
|
- Необходимо решить следующую задачу: динамическое создание элементов управления
и назначение им функций. По щелчку на форме правой кнопкой выпадает контекстное
меню со следующими пунктами: Надпись 3, Текст 3, Кнопка 3. Когда пользователь
выбирает пункт меню, то на форме (в точке щесчка) появляется соответствующий элемент
управления (Static, Edit или Button), а количество элементов уменьшается, например,
выставили одну надпись и при следующем отображении меню в нем будут пункты: Надпись 2,
Текст 3, Кнопка 3. Если на форме выставлены все элементы одного типа, например, текст,
то данный пункт исчезает из меню. После выставления всех девяти элементов (необходимо
сделать проверку на это), по щелчку на первой кнопке: Надпись1 = Площадь Окна, Текст1 =
площадь окна (посчитанная); по нажатию на вторую: Надпись2 = Площадь Клиентской Области
Окна, Текст2 = площадь клиентской области окна (посчитанная); по нажатию на третью:
Надпись3 = Площадь Заголовка Окна, Текст3 = площадь заголовка окна (площадь окна -
площадь клинтской области окна). Совет: Все необходимые идентификаторы и связанные
с ними функции создайте заранее.
- Создать произвольное меню (7-8 пунктов, причем из них 3 первого уровня,
2 входят в элементы меню первого уровня, остальные входят в элементы меню 2 уровня).
Создать на форме две кнопки. По нажатию на первую кнопку меню должно руссифицироваться
(т. е. все английские названия переводятся на русский), после повторного нажатия
меню вновь становится англоязычным. Вторая кнопка должна делать то же самое.
Разница заключается в том, что в первом случае вы должны сделать "подмену" меню
(у вас изначально существует два меню: русское и английское), а во втором вы
работаете с одним и тем же ресурсом (т. е. осуществляете двухсторонний перевод
пунктов одного и того же меню).
|
просмотреть
|
скачать ~630 KB
|
|
lesson_sp_17
|
- Создать маленькую игрушку. На поле находятся 10 кнопок (Button), счетчик (Spin),
список (ListBox). Правила: при запуске игры на кнопки помещаются 10 случайных чисел
(при этом на счетчике необходимо выставить скорость игры в десятых долях секунды,
что будет являться значением для таймера). Задача: необходимо за заданное время
щелкнуть по числам на кнопках в порядке возрастания; числа должны добавляься в список
(только если данное число является следующим по возрастанию). Если игрок не успевает,
то список очищается и игра начинается снова с текущим значением таймера (на счетчике).
- Дополнить (созданное вами ранее) приложение, которое осуществляет поиск заданного
слова (словосочетания) в заданном файле (файлах) и выводит в список наименование файла
и позицию(-и) заданной фразы в нем, индикатором, который сообщает пользователю
процентаж выполненной работы.
|
просмотреть
|
скачать ~61.5 KB
|
|
lesson_sp_18
|
- Создать форму, которая содержит список, содержащий с десяток строк произвольного
содержания, текстовое поле и две кнопки. В текстовом поле набирается подсказка и по
кнопке назначается на текущую (выделенную) строчку списка. По нажатию другой кнопки
подсказка снимается с текущей строчки списка. Учесть возможность наличия полосы
вертикальной прокрутки у списка.
- Создать форму, содержащую несколько произвольных элементов управления.
По наведению мыши на любой из них должна отображаться всплывающая подсказка,
содержащая размер, стили и расположение (координаты) элемента под курсором
относительно главной формы.
- Создать форму, содержащую в правой половине 4 столбика кнопок по 4 штуки в каждом.
Каждая кнопка в качестве заголовка содержит свой порядковый номер. В левой половине
формы расположен статик размером 4 ширины кнопки на 4 высоты кнопки, то есть статик
условно разбит на прямоугольные области, каждая из которых равна кнопке. Номера
областей перемешиваются произвольным образом, и при наведении мышки на какую-нибудь
область, должна выпадать подсказка, выводящая номер конкретной области.
Задача пользователя заключается в перетаскивании кнопки в область, соответствующую
(по номеру) заголовку кнопки. При попытке поставить, например, кнопку с номером 5
в область с новером 3, кнопка должна вернуться на исходную позицию. Примерный
вид формы см. на рисунке.
|
просмотреть
|
скачать ~91 KB
|
|
lesson_sp_19
|
Создать приложение - "Планировщик задач". На форме должен быть список задач и
время их выполнения. И то и другое может добавляться, удаляться и модифицироваться.
То есть когда подходит заданное время, запускается ассоциированная с этим временем задача.
При появлении приложение должно "прятаться" в трэй. После выполнения задачи она
помещается в список выполненных задач, где также указывается ее статус, то есть
задача была выполнена успешно или неуспешно (в этом случае указать возможную причину).
|
просмотреть
|
скачать ~41.5 KB
|
|
lesson_sp_20
|
- Создать программку, в которой пользователь может хаотично щелкать левой кнопкой
мыши по рабочей области окна (количество щелчков неограниченно), и по нажатию на
кнопочку, которая также присутствует на форме, на экране должен появится прямоугольник,
который содержит в себе все точки, на которые клацал пользователь. Если пользователь
нажимает правую кнопку мыши, то на экране также должен появиться прямоугольник, который
содержит в себе все точки, на которые клацал пользователь, но при отпускании правой
кнопки мыши прямоугольник должен с экрана исчезнуть.
- Создайте текстовый редактор, который включает в себя описанные в уроке элементы:
мультибуфер; строку состояния, которая должна отображать текущую позицию мигающей
каретки (то есть текущую строку, текущий столбец, количество символов от начала Edit'а
до каретки, общее количество символов в файле); полноценный диалог для поиска и замены
текста (то есть поиск заданного выражения в обе строны, поиск по отдельному слову,
регистрозависимый и регистронезависимый поиск, замену выражений по одиночке и во
всем тексте одновременно); плюс в редакторе должно быть симпатичное меню и набор
соответствующих акселераторов (работу с файлами можно при желании содрать с
предыдущих уроков, но если сможете написать самостоятельно, то будет намного лучше).
Также необходимо добавить в текстовый редактор возможность выбора шрифта.
|
просмотреть
|
скачать ~72.6 KB
|
|
lesson_sp_21
|
Реализовать подкраску математических элементов с возможностью управления цветовыми
настройками из меню. Например, подкрашиваются числа, названия тригонометрических функций,
скобки, арифметические операторы и остальной текст.
|
просмотреть
|
скачать ~138 KB
|
|
lesson_sp_22
|
В прошлом домашнем задании вы успешно справились (очень хочеться верить) с заданием,
связанным с подкрашиванием содержимого математических формул. Теперь вам предлагается
продолжить данный проект, добавив возможность открывать несколько документов одновременно,
для этого можно успешно использовать рассмотренный в уроке класс закладок (CTabCtrl).
Также необходимо дополнить проект возможностью настройки текущего или всех одновременно
документов. Например, настройка цветов для разных компонент математических формул,
настройка отступов в редакторе, настройка выравнивания текста и т. п. Настоятельно
рекомендуем воспользоваться классами CPropertySheet и CPropertyPage при создания
немолального окна для настройки атрибутов документа.
Примечание: под документом подразумевается вкладка с RichEdit'ом
|
просмотреть
|
скачать ~53.7 KB
|
|
lesson_sp_23
|
Создать класс, имитирующий поведение гиперссылки.
Список минимальных требований:
- Гиперссылка может содержать текст, иконку или картинку.
- При наведении мыши, должен изменяться курсор мыши и подчеркиваться текст
надписи (изображения должны выделяться рамкой).
- Если указатель мыши задерживается на гиперссылкой какое-то время, должна
появиться всплывающая подсказка, содержащая полный адрес перехода.
- Цвет надписи определяется состояниями гиперссылки: активная, посещенная, непосещенная.
- По нажатию на гиперссылку должно выполниться указанное действие.
|
просмотреть
|
скачать ~83.6 KB
|
|
lesson_sp_24-25
|
Разработать игру "Слова" ("Балда").
Правила игры: имеется игровое поле размером 5х5 клеток, в центральной строке
которого расположено произвольное слово (из файла) длиной в 5 букв. Задача
играющего дописать к имеющимся на поле буквам одну любую букву таким образом,
чтобы получить новое слово, в которое входит данная буква. Слова не могут повторяться,
в слове не может использоваться одна и та же буква на игровом поле дважды,
слово может читаться в любом направлении, кроме диагонального. За каждую букву
составленного слова начисляется одно очко. По желанию играющего ход один раз можно
пропустить, при повторном пропуске этому игроку зачисляется поражение.
При отсутствии введенного игроком слова в словаре компьютера, компьютер
должен запросить уверен ли пользователь, и если да, то компьютер должен
внести в словарь это слово.
Требования к оформлению:
- реализация меню на русском и "буржуйском языках" с возможностью переключения;
- сворачивание главного окна в SystemTray;
- буквы должны перетаскиваться на поле мышкой;
- необходимо предусмостреть возможность настройки "скинов" для кнопок,
игрового поля и т. д.;
- предусмотреть установку времени, которое игрок вправе потратить на ход (по
истечении этого интервала ход передается ко второму противнику);
- реализовать возможность установки паузы;
- реализовать возможность сохранения (загрузки) текущей игры в файл;
- сохранять текущие настройки в реестр;
- реализовать отображения списка лучших игроков;
- предусмотреть возможность игры с компьютером (ЖЕЛАТЕЛЬНО !!!).
|
просмотреть
|
скачать ~2.8 MB
|
|
lesson_sp_26
|
Разработать игру "Линии" ("Lines").
В двух словах: на игровом поле после каждого хода случайным образом появляются 3
шарика разных цветов. Задача играющего собрать вертикальную, горизонтальную или
диагональную линию из 5-ти и более шариков одного цвета, в этом случае собранная
линия исчезает и за нее начисляются какие-то очки. Игра прекращается
при полном заполнении игрового поля.
Можно создать любые "навороты" по желанию программиста.
|
просмотреть
|
скачать ~51.5 KB
|
|
lesson_sp_27
|
Написать программу "Органайзер".
Интерфейс должен включать дерево с узлами на каждый день, для которого есть хоть одна
запись. Узел должен содержать узлы-разделы (например, Встречи, Дни рождения и т.д.).
Разделы можно добавлять динамически. В разделах содержится информация о событии (краткая
характеристика). Полная информация о событии отобразится при щелчке по элементу в
отдельном окне (интерфейс разработать самостоятельно). Обязательная информация о событии:
дата, время, уровень важности (строго обязательно, важно, желательно), описание.
Предусмотрите различные иконки на разделы дерева по уровню важности событий в нем.
|
просмотреть
|
скачать 35.7 KB
|
|
lesson_sp_28
|
Создать класс, производный от CListCtrl'а. который работает в режиме таблица.
Класс должен поддерживать редактирование текста в любых колонках (для этого рекомендуем
в ячейку под курсором мыши помещать временный Edit), и отображение (по щелчку) списка
заранее известных значений (для этого рекомендуем в ячейку под курсором мыши помещать
временный ComboBox). Класс также должен поддерживать сортировку элементов списка по
любой из колонок. Например, есть колонка номер паспорта и колонка ФИО, производится
щелчок по названию колонки (класс CHeaderCtrl), возьмем для определенность ФИО, и
данные в списке сортируются соответственно.
|
просмотреть
|
скачать 25.1 KB
|
|
lesson_sp_29
|
Пользователь кликает левой кнопкой мышки по клиентской области приложения.
На месте клика рисуется круг фиксированного радиуса. Необходимо соединять соседние
круги линиями (имеются в виду линии, соединяющие центры окружностей), а также нужно
реализовать возможность сохранения документа в файл и загрузки документа из файла
с восстановлением изображения.
|
просмотреть
|
скачать 39.3 KB
|
|
lesson_sp_30
|
Разработать приложение HexEditor (шестнадцатиричный редактор). Редактор должен считывать
файл любого типа (и размера) и отображать его в виде 16-чных кодов (слева) и сам файл
(справа). Должна поддерживаться возможность поиска информации по тексту и по введенной
16-чной строке символов, а также возможность сохранения изменений в файл. Добавить
поддержку перехода по заданному адресу (например, 00002F3C) в файле.
|
просмотреть
|
скачать
|
|
lesson_sp_31
|
Разработать приложение, которое имеет два представления. В одном вводится русский текст, а в другом окне производится транслитерация текста латинскими буквами.
Например, предыдущий абзац может выглядеть так:
Razrabotat’ prilozhenije, kotoroje imjejet dva predstavljenija. V odnom vvoditsja russkij tjekst, a v drugom oknje proizvoditsja transliteracija tjeksta latinskimi bukvami.
|
просмотреть
|
скачать
|
|
lesson_sp_32
|
Создать приложение для просмотра графических файлов (bmp). Примерный вид приложения см. ниже.
Содержимое каталога
(Список файлов)
|
Изображение
(В полный рост)
|
информация об изображении
(Тип, размеры, глубина цвета и т. д.)
|
Предварительный просмотр
(Preview)
|
|
просмотреть
|
скачать
|
|
lesson_sp_33
|
Разработать MDI-приложение, которое поддерживает открытие, редактирование и сохранение текстовых файлов. Причем, текстовый файл может быть открыт в одном из двух режимов: стандартный вариант или шестнадцатиричный код (только чтение). Также, предусмотреть возможность изменения режима просмотра уже после того как файл был открыт.
|
просмотреть
|
скачать
|
|
lesson_sp_34
|
Разработать приложение, которое реализует построение графиков функций произвольного вида. Предусмотреть отображение графиков в отдельных окнах и в одном окне,сохранение загрузка любого из графиков в(из) файл(а), масштабирование графиков, отображение координатных осей.
|
просмотреть
|
скачать
|
|
lesson_sp_35
|
В качестве домашнего задания, предлагаем Вам разработать приложение, которое сканирует зарегистрированные расширения файлов в реестре Windows и позволяет узнать путь к файлу, содержащему соответствующие иконки, сопоставленные с данными расширениями.
|
просмотреть
|
скачать
|
|
lesson_sp_36
|
Разработать проект состоящий из двух приложений. Первое приложение выступает в качестве командной панели для второго приложения (позволяет запустить, закрыть второе приложение). Второе приложение, используя многопоточость, моделирует "цветомузыку" (с помощью нескольких индикаторов и псевдослучайных чисел).
|
просмотреть
|
скачать
|
|
lesson_sp_36a
|
Разработать приложение-игру, "баскетбольная корзина". Идея следующая: мячики падают под разным углом. В нижней части окна есть корзина, передвигающаяся по горизонтали. Корзина управляется курсорными клавишами. Реализовать несколько уровней сложности игры: начальный уровень поддерживает игру с одним мячиком , ну, а чем дальше в лес - тем больше мячиков... Каждый мячик имеет свою скорость. Реализовать защиту программы от повторного запуска (одновременно может быть запущен только один экземпляр приложения).
|
просмотреть
|
скачать
|
|
lesson_sp_37
|
Сегодня мы усовершенствуем пример из одного из предыдущих наших уроков. Мы добавим к программе, работающей с процессами и потоками, две дополнительные функции, одна из которых позволит получать информацию о системе, а другая - о памяти.
Смотрите модифицированный пример! (Путь к нему вы знаете)
|
просмотреть
|
скачать
|
|
lesson_sp_38a
|
Разработать приложение следующего характера. Есть некоторое диалоговое окно, в котором отображаются текущие координаты курсора мыши (вне зависимости от того, где находится курсор мыши) и RGB составляющие точки над которой находится курсор мыши.
|
просмотреть
|
скачать
|
|
lesson_sp_38
|
Разработать DLL, в которой реализованы функции, отвечающие за сортировку одномерных массивов.
|
просмотреть
|
скачать
|