Здравствуйте, нужна помощь в программировании.

Необходимо решить несколько задач на C++. Листинг программы должен быть с понятными комментариями. О цене договоримся, предлагайте свою цену (конечно же, в разумных пределах).

Задачи такие:

1. Придумать и написать работающую программу с использованием множественного и многократного наследования.

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

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

2. Реализовать классы Point, Circle, Rectangle или т. п. с использованием виртуальных методов  Show и Hide.

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

Переделать программу с использованием абстрактного базового класса Figura, содержащего координаты центра фигуры, метод MoveTo и абстрактные методы Show и Hide.

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

3. Продемонстрировать два способа использования динамических операций при работе с классами

Реализовать класс безопасного массива векторов, размерности = 2.

Продемонстрировать передачу параметров в функции при помощи ссылок.

4. Создать класс Fraction (a / b), осуществляюший с целыми дробями операции +, - , *, /  .

Продемонстрировать работу этого класса.

Использовать закрытый метод redu, возвращающий дробь с наименьшим общим знаменателем.

Fraction Fraction::redu( ) {

int g =1; int min =a;

if (a > b) { min =b; }

for (int i =1; i<=min; i++)

{ if ( (a % i == 0) && (b % i == 0)) {g =i;}  }

a = a /g;  b = b /g;

return * this;  }

Реализовать данный пример, создав управляемый размерный тип Fraction в. NET 

5. Создать шаблон класса – очередь размером size на основе массива queue[size].

Реализовать Конструктор, присваивающий начальные значения индексу вершины и хвоста очереди. Методы помещения и извлечения значений из очереди с контролем пустоты или полноты очереди. Продемонстрировать работу программы для целых и вещественных чисел и символов (char).

P. S. Пусть вас не смущает моя электронка :-). Просто свою основную не хочу светить.