Задание 31.
Разработать многопоточное приложение со следующей функциональностью. Каждый из трех рабочих потоков приложения заполняет элементы массива цветов размера 100×100, соответственно, значениями синий, зеленый, желтый. Предварительно элементы массива должны быть заполнены белым цветом. Каждый элемент массива заполняется цветом лишь одним потоком и только один раз. После выполнения своей работы потоки сами себя завершают. Чтобы поработали все потоки, введите в код потоков временную задержку. После заполнения потоком цветом очередного элемента, в главный поток должно отправляться сообщение о необходимости перерисовать клиентскую область окна приложения. В клиентской области окна приложения главный поток должен рисовать матрицу эллипсов размера 100×100, закрашенных соответствующим цветом. Синхронизацию рабочих потоков осуществить с помощью события с ручным сбросом.
Задание 32.
Разработать приложение с графическим интерфейсом, выводящее на экран (в диалоговое окно) информацию о памяти, возвращаемую функциями GetSystemInfo GlobalMemoryStatus, а также информацию обо всех дисках. Для вывода результата использовать элементы управления – метки. Разработать консольный вариант этого приложения.
Задание 33.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде резервирует регион и выделяет ему физическую память для массива элементов заданного размера, а затем заполняет его случайно сгенерированными элементами. Каждый элемент задает цвет, размеры и расположение прямоугольника. По команде в окне приложения строится прямоугольник, соответствующий значению заданного номера элемента массива.
Задание 34.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде создает проецируемый файл. Проецируемый файл отображает на массив элементов заданного размера, который заполняет случайно сгенерированными элементами. Каждый элемент задает цвет, размеры и расположение эллипса. По команде в окне приложения строится эллипс, соответствующий значению заданного номера элемента массива.
Задание 35.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде создает в стандартной куче двухсвязный список элементов заданного размера, затем заполняет его элементы случайно сгенерированными значениями. Каждый элемент задает цвет, размеры и расположение правильного треугольника. С помощью кнопок навигации позволяет перемещаться по элементам списка, при этом в окне приложения строится правильный треугольник, соответствующий значению текущего элемента массива списка.
Задание 36.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде создает в стандартной куче циклический односвязный список элементов заданного размера, затем заполняет его элементы случайно сгенерированными значениями. Каждый элемент задает цвет, размеры и расположение правильного пятиугольника. С помощью кнопки навигации позволяет перемещаться по элементам списка, при этом в окне приложения строится правильный пятиугольник, соответствующий значению текущего элемента массива списка.
Задание 37.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде создает файл с именем, задаваемым в поле ввода (если файл уже существует, то он перезаписывается), с заданным количеством элементов, затем заполняет его элементы случайно сгенерированными значениями. Каждый элемент задает цвет, размеры и расположение правильного шестиугольника. С помощью кнопок навигации позволяет перемещаться по элементам файла, при этом в окне приложения строится правильный шестиугольник, соответствующий значению текущего элемента. Считывает и отображает размер файла в байтах.
Задание 38.
Создайте приложение (с интерфейсом диалогового окна), выполняющее следующие функции: по команде создает файл с именем, задаваемым в поле ввода (если файл уже существует, то он перезаписывается), с заданным количеством элементов, затем заполняет его элементы случайно сгенерированными значениями. Каждый элемент задает цвет, размеры и расположение правильного пятиугольника. С помощью кнопок навигации позволяет перемещаться по элементам файла, при этом в окне приложения строится правильный пятиугольник, соответствующий значению текущего элемента. Считывает и отображает размер файла в байтах.
Задание 39.
Разработать два приложения SndClp и RcvClp со следующей функциональностью. Первое приложение (SndClp) должно отправляет в буфер обмена первый член, разность и число членов арифметической прогрессии. Второе приложение (RcvCpl) должно работать как просмотрщик буфера обмена, извлекать из него переданные значения и вычислять последний член арифметической прогрессии, сумму всех ее членов и отображать результат в своем окне. Для ввода данных разработать диалоговое с необходимыми элементами управления, которое должно открываться сразу же после запуска приложения SndClp. В приложении RcvClp после его запуска должно открываться обычное окно приложения.
