Главная страница   
Экстренная связь
Сейчас на сайте

Админов: 4
Работников: 7
Клиентов: 1
Гостей: 20

Вход
Логин:  
Пароль:  
На заказ
Разместить заявку
Программирование
Информатика
Базы данных
Бухгалтерский учёт
Экономика, Аудит
Финанс. менеджмент
Финансовый анализ
Эконом. теория
Эконом. предприятия
Финансы и кредит
Менеджмент
Маркетинг
Юриспруденция
Право
Психология
Математика
Физика
ОТУ
Радиотехника
Электроника
Схемотехника
Механика
Метрология
Перефразирование
История
Английский
Студентам ТУСУР-а
Другой предмет
Готовые работы
Программирование
Экономика, Аудит
Бухгалтерский учёт
Финансы и кредит
Юриспруденция
Право
История
Психология
Механика
Информация
О сайте
Контакты
Наши цены
Наши гарантии
Способы оплаты
Вопросы и ответы
Отзывы клиентов
Вакансии
Написать письмо
Мы работаем
ЕЖЕДНЕВНО
с 9:30 до 23:30 msk
Поиск по сайту
Полезное
Теор.выч.процессов
Разное
Облака тегов
Архив заказов
Карточные игры
Преподы-монстры
Антиплагиат
Мысли вслух

















Бизнес-уровень
программирование
экономика
юриспруденция




Проверить аттестат


Бизнес-уровень
математика
физика
психология




Проверить аттестат




Яндекс цитирования






Грызи гранит не портя зубы;)


Яндекс.Метрика









Класс!









Stats









Логин: Пароль:       

KURSOVIK.COM 12 лет ONLINE KURSOVIK.COM

Поиск готовой работы
KURSOVIK.COM работаем с 2001 года

Введение в объектно-ориентированное программирование

Введение в объектно-ориентированное программирование

ЛАБОРАТОРНАЯ РАБОТА №1.
"ПРОСТЕЙШИЕ ПРОГРАММЫ"

Цель работы

Целью данной лабораторной работы является реализация про-стейших программ, изучение работы с компилятором языка С/С++, изучение стандартного ввода/вывода и операций в языке С++.


Вариант Номер
задания Задание
1 1.1 Найти минимальное число в массиве.
1.2 Произвести сложение двух массивов 5х3 по правилам сложения матриц.
1.3 Найти разницу в днях между двумя заданными датами.
2 2.1 Найти максимальное число в массиве.
2.2 Создать двумерный массив 5х3 элемента, найти в этом массиве сумму всех элементов.
2.3 Определить, является ли заданная квадратная матрица симметричной относительно главной диагонали.
3 3.1 Найти сумму чисел в массиве.
3.2 Отсортировать массив по убыванию.
3.3 Произвести перемножение двух массивов 5х3 и 3х5 по правилам умножения матриц.
4 4.1 Найти произведение чисел в массиве.
4.2 Отсортировать массив по возрастанию.
4.3 Найти определитель матрицы 3х3 по определению определителя.
5 5.1 Распечатать массив в обратном порядке.
5.2 Заполнить массив числами Фибоначчи (от n=1 до n=20). Числа Фибоначчи: fn=fn-1+fn-2, f1=1, f2=1.
5.3 Произвести сложение двух одномерных массивов целых чисел, в каждом элементе которого записана одна десятичная цифра.
6 6.1 Заполнить массив значениями квадрата индекса.
6.2 Заполнить массив из 20 вещественных чисел значениями факториала: n!, где n - индекс массива, ! - операция факториал: n!=nЧ(n-1)!, 1!=1.
6.3 Произвести вычитание двух одномерных массивов целых чисел, в каждом элементе которого записана одна десятичная цифра.
7 7.1 Найти среднее арифметическое чисел массива.
7.2 Заполнить массив вещественных чисел случайными числами в диапазоне от 10 до 11. Произвести нормировку массива вещественных чисел: , где А - корень квадратный из суммы квадратов значений массива: .

7.3 Произвести операцию скалярного умножения двух векторов.
8 8.1 Домножить каждый элемент массива на заданное число.
8.2 Написать программу, которая определяет, является ли первый заданный вектор вещественных чисел обратной записью второго аналогичного вектора.
8.3 Вычислить векторное произведение двух векторов.
9 9.1 Добавить к каждому элементу массива заданное число.
9.2 По заданной квадратной матрице найти вектор, в котором записаны максимумы всех строк матрицы.
9.3 Найти вектор-сумму нескольких заданных векторов.
10 10.1 Вычесть из каждого элемента массива значение среднего арифметического.
10.2 По заданной квадратной матрице найти вектор, в котором записаны минимумы всех столбцов матрицы.
10.3 Назовем седловой точкой матрицы ячейку, которая является минимальной в своей строке и максимальной в столбце. Найти хотя бы одну седловую точку матрицы размером 10х10, если она есть.


ЛАБОРАТОРНАЯ РАБОТА №2. "РЕАЛИЗАЦИЯ ПРОСТЕЙШЕГО КЛАССА"

Цель работы

Целью данной лабораторной работы является реализация про-стейшего абстрактного класса на языке С++.

Вариант Задание
1 Разработать класс Vector - геометрический вектор произвольной размерности (размерность задается в конструкторе вектора). Реализовать метод доступа к элементам вектора. Реализовать операции сложения, вычитания и скалярного произведения векторов, а также нахождение модуля вектора.
2 Разработать класс Matrix - матрица. Размерность матрицы задавать в конструкторе. Реализовать метод доступа к элементам массива. Реализовать операции сложения, вычитания, умножения и транспонирования матрицы. Сделать метод определения симметричности матрицы (если матрица квадратная). Сделать метод формирования единичной матрицы (для квадратных матриц).
3 Разработать класс ArrayOfInt - массив целых чисел. Размерность массива задавать в конструкторе. Реализовать метод доступа к элементам массива. Реализовать метод Sum - вычисление суммы чисел в массиве. Метод сортировки массива по возрастанию и по убыванию, метод сравнения двух массивов (==, !=). Метод конкатенации (слияния) двух массивов.
4 Разработать класс FileStream, инкапсулирующий работу с файлами через стандартную библиотеку Си (fopen, fclose, fprintf, fscanf, fread, fwrite и т.д.). Реализовать методы открытия и закрытия файла (отдельный метод Open и метод Create и конструктор с именем открываемого файла, закрывать - в деструкторе и отдельным методом Close) Реализовать методы Write и Read для int, double и char*. Обеспечить два режима записи - двоичный и текстовый. В текстовом режиме все числа записываются в виде текста, например, целое число 3987 записывается как последовательность символов '3987 ' (преобразование можно сделать при помощи fprintf, например), а в двоичном в виде последовательности двух байт: 0x93, 0x0f (при помощи fwrite).
5 Разработать класс large - длинное целое. Для хранения одной десятичной цифры использовать одно число типа char. Количество десятичных цифр, которые должны размещаться в этом числе, передавать в конструкторе. Реализовать методы присваивания, сложения двух чисел, печати числа на экране.
Переписать программу вычисления числа Фибоначчи для типа large. Вычислить fn=100 (22 десятичных цифры). Замечание: если Вы в прошлый раз использовали рекурсивный алгоритм вычисления чисел Фибоначчи, то теперь Вам необходимо разработать нерекурсивный алгоритм, так как рекурсивное вычисление для n=100 займет слишком много времени (возможно, несколько миллионов лет).
6 Разработать класс String - строка символов. Реализовать операции присваивания, конкатенацию (слияние двух строк), сравнения строк (==, !=), метод вывода объекта на экран. Размер строки динамически увеличивается в процессе работы со строкой по мере необходимости.
7 Разработать класс Vector4 и Matrix4 - 4-компонентный вектор и матрица 4х4 соответственно. Реализовать операции сложения матриц, умножения матриц, сложения векторов, умножения матрицы на вектор и вектора на матрицу. Домножение матрицы и вектора на число, нормализация вектора (при данной нормализации все 4 составляющие вектора делятся на значение последней - четвертой составляющей). Отображение матрицы и вектора на экране.
8 Реализовать класс Date (дата) - инкапсулирует внутри данные для работы с датой. Реализовать методы ввода и вывода этой информации. Реализовать операцию вычисления разности между двумя датами (результат в днях).
9 Реализовать класс Time (время) - инкапсулирует внутри данные для хранения времени (часы, минуты, секунды). Реализовать методы ввода и вывода этой информации. Реализовать операцию вычисления разности между двумя точками времени (результат в секундах).
10 Разработать класс Complex - комплексные числа. Реализовать операции: сложения, умножения комплексных чисел, умножения реальных чисел на комплексные и наоборот, нахождения реальной и мнимой части числа, перевода в полярные координаты.


КОНТРОЛЬНАЯ РАБОТА №1

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

Предварительные сведения
В предыдущих лабораторных работах внутри классов Вы исполь-зовали только встроенные в компилятор типы данных. Данная работа будет отличаться лишь тем, что, помимо стандартных типов данных, Вы будете использовать еще и созданные Вами в предыдущей лабо-раторной работе классы.


Вари-ант Задание
1 На основе класса Vector разработать класс Matrix (мат-рица, физически представляющая собой вектор, состоя-щий из заданного числа векторов). Реализовать метод сравнения двух матриц (==, !=).
2 Разработать класс ArrayOfMatrix - массив матриц. Раз-мерность массива и матриц, входящих в него, задавать в конструкторе. Реализовать метод доступа к элементам массива, метод сравнения двух массивов (==, !=). Реали-зовать операции конкатенации массивов.
3 Разработать класс SqArrayOfInt - двумерный массив целых чисел. Физически данный массив должен состоять из вектора массивов типа ArrayOfInt. Размерность мас-сива задавать в конструкторе. Реализовать метод досту-па к элементам массива. Реализовать метод Sum - вы-числение суммы чисел в массиве. Метод сортировки массива по возрастанию и по убыванию, метод сравне-ния двух массивов (==, !=). Метод конкатенации (слия-ния) двух массивов.
4 Разработать класс SortedFile - сортированный файл, в данном файле хранятся строчки одинаковой длины в порядке возрастания. Имя файла задается в конструкто-ре. Реализовать метод слияния двух файлов (результи-рующий файл должен остаться сортированным).
5 Разработать класс NaturalFraction (обыкновенная дробь) два числа типа large (числитель и знаменатель). Реализо-вать методы сложения, умножения и деления дробей. Метод вывода на экран.
6 Разработать класс Strings - массив строк символов. Реа-лизовать операции доступа к строкам (оператор "квад-ратная скобка"), присваивания, конкатенации (слияния двух массивов).
7 Разработать класс ArrayOfVector4 - массив 4-компонентных векторов. Размер массива не ограничен и изменяется динамически в зависимости от потребностей. Реализовать операции доступа к элементам массива, конкатенации, добавления к массиву элемента. Метод-итератор - в данный метод передается функция, которую необходимо выполнить для каждого элемента массива.
8 Реализовать класс Person (персона) - инкапсулирует персональные данные о человеке (фамилию, имя, отче-ство и дату рождения типа Date). Для этого класса реа-лизовать конструктор, позволяющий записать данные в объект и метод вывода персоны на экран. Реализовать класс Persons - массив персон. Реализовать операции доступа к элементам массива, конкатенации, добавления к массиву элемента. Метод, выдающий список лиц, до дня рождения которых осталось менее 5 дней (возможно придется модифицировать класс Date).
9 Реализовать класс Event (событие) инкапсулирует время прихода события (типа Time) и значение события (веще-ственное число). Реализовать класс Events - последова-тельность событий. Размер массива задается в конструк-торе и автоматически изменяется в случае необходимо-сти. Реализовать методы сортировки по времени и по значению события (два метода). Метод поиска среднего значения между двумя точками времени. Метод поиска среднего времени между двумя последовательными со-бытиями.
10 Разработать класс ComplexMatrix - матрица комплекс-ных чисел. Размер матрицы задается в конструкторе. Реализовать операции: сложения, умножения матриц, умножения матрицы на число (комплексное).

ЛАБОРАТОРНАЯ РАБОТА №3. "НАСЛЕДОВАНИЕ"

Цель работы
Целью данной лабораторной работы является изучение механиз-ма наследования.

Вариант Задание
1 Разработать класс NormVector - вектор единичной длины, наследованный от класса Vector.
Замечание: нормирование необходимо производить после любого изменения составляющих вектора. Соответственно необходимо перегрузить метод доступа к компонентам вектора.
2 Разработать класс NormMatrix (матрица с единичным определителем), наследованный от класса Matrix.
Замечание: для упрощения пусть матрица будет размерностью до 3х3. Нормирование матрицы необходимо производить после любого изменения составляющих. Соответственно необходимо перегрузить метод доступа к ее компонентам.
3 Разработать класс SortedArrayOfInt - упорядоченный массив целых чисел, наследованный от класса ArrayOfInt.
Замечание: сортировку массива необходимо производить после любого изменения его составляющих. Соответственно необходимо перегрузить метод доступа к его компонентам.
4 Разработать класс EncryptedFile - шифрованный файл, наследованный от файла FileStream. В конструктор данного класса передавать ключ - последовательность из нескольких символов, все операции чтения и записи производить через виртуальную процедуру шифрования. Об алгоритме шифрования читайте в комментариях. Все остальные методы сохраняются аналогично классу FileStream.
5 Разработать класс fixpoint (число с фиксированной точкой), наследованный от класса large. В конструктор класса передавать количество цифр до запятой и количество цифр после запятой - их сумма как раз и будет количеством цифр в числе large. Операция сложения остается неизменной. Изменятся вывод числа на экран.
6 Разработать класс LowString (строка из прописных символов), наследованный от класса String.
Замечание: замену больших букв на маленькие необходимо производить при любом изменении строки.
7 Разработать класс NormedVector4 - 4-компонентный нормализованный вектор. Нормализацию вектора необходимо производить при каждом изменении составляющих вектора. Обеспечить методы "поворот", "смещение", "масштабирование" (см. комментарии).
8 Реализовать класс ValidDate (корректная дата), наследованный от класса Date. При каждом изменении даты необходимо производить контроль корректности даты. Реализовать метод вывода печати в различных форматах.
9 Реализовать класс ValidTime - корректное время. При каждом изменении времени необходимо производить контроль корректности времени. Реализовать методы форматного вывода этой информации.
10 Разработать класс PolarComplex (комплексные числа, представленные в полярных координатах), наследованный от класса Complex. Ввод и вывод этих чисел осуществляется в полярных координатах, хранение и все остальные методы оставить родительские.


ЛАБОРАТОРНАЯ РАБОТА №4. "ШАБЛОНЫ"

Цель работы

Целью данной лабораторной работы является изучение шаблонов классов в языке С++.

Номер
варианта Задание
1 Разработать шаблон класса TVector - одномерный массив; в качестве параметра шаблона использовать тип данных, хранимых в массиве. Функциональность данного класса аналогична функциональности класса из 2-ой лабораторной работы. В качестве примера использования данного шаблона сделать его реализацию для типа NormVector.
2 Разработать шаблон класса TList - список (односвязный либо двусвязный); в качестве параметра шаблона использовать тип хранимых в списке данных. Обеспечить функциональность данного класса, аналогичную функциональности класса из 2-ой лабораторной работы. В качестве примера использования данного шаблона сделать его реализацию для типа Matrix.
3 Разработать шаблон класса TArray - массив (прямоугольный); в качестве параметра шаблона использовать тип хранимых в массиве данных. Обеспечить функциональность данного класса, аналогичную функциональности класса из 1-ой лабораторной работы. В качестве примера использования данного шаблона сделать его реализацию для типа SqArrayOfInt.
4 Разработать шаблон класса TFileOf - типизированный файл; в качестве параметра шаблона использовать тип данных, хранимых в файле (это могут быть строки фиксированной длины, целые числа, структуры и так далее). Имя открываемого файла и режим открытия (чтение/запись) передается в конструктор. Режим чтения и записи только двоичный. Реализовать методы Read и Write, в которые в качестве параметра передается объект (для Write) или ссылка на объект (для Read), который необходимо записать или прочитать.
5 Разработать шаблон класса TLarge - длинное число; в качестве параметра шаблона указать тип данных, используемых для хранения одной десятичной цифры. Обеспечить функциональность, аналогичную функциональности класса large. В качестве примера использования данного шаблона сделать его реализацию для типа char.
6 Разработать класс TString - строка символов; в качестве параметра шаблона указать тип данных, используемых для хранения одного символа. Обеспечить функциональность, аналогичную функциональности класса String. Размер строки динамически увеличивается в процессе работы со строкой по мере необходимости. В качестве примера использования данного шаблона сделать его реализацию для типа short.
7 Разработать шаблоны классов TVector4 и TMatrix4 - 4-компонентный вектор и матрица 4х4 соответственно; в качестве параметра шаблона использовать тип данных, используемых для хранения одной ячейки. Обеспечить функциональность, аналогичную функциональности классов Vector4 и Matrix4.
8 Разработать шаблон класса TVector - одномерный массив; в качестве параметра шаблона использовать тип данных, хранимых в массиве. Обеспечить метод доступа к элементам массива; дополнительно обеспечить функциональность, аналогичную классу Persons. В качестве примера использования данного шаблона сделать его реализацию для типа Person.
9 Разработать шаблон класса TVector - одномерный массив; в качестве параметра шаблона использовать тип данных хранимых в массиве. Обеспечить метод доступа к элементам массива; дополнительно обеспечить функциональность, аналогичную классу Events. В качестве примера использования данного шаблона сделать его реализацию для типа Person.
10 Разработать шаблон класса TArray - двумерный массив (матрица); в качестве параметра шаблона использовать тип данных, хранимых в матрице. Размерность матрицы задавать в конструкторе. Реализовать метод доступа к элементам массива. Реализовать операции сложения, вычитания, умножения и транспонирования матрицы. Сделать метод определения симметричности матрицы (если матрица квадратная). В качестве примера использования данного шаблона сделать его реализацию для типа Complex.


КОНТРОЛЬНАЯ РАБОТА №2

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

Номер
варианта Задание
1 Доработать шаблон класса TVector. Будем считать новый шаблон полноценным геометрическим вектором; внести операции сложения, вычитания, умножения ска-лярного и геометрического (для 3-мерных), умножения на число, нормализацию вектора. В качестве парамет-ра шаблона - тип чисел хранимых в векторе (могут быть float, double, complex и так далее).
2 Разработать шаблон класса TMatrix, в качестве пара-метра шаблона - тип чисел хранимых в векторе (могут быть float, double, complex и так далее). В данном шаб-лоне должны быть реализованы методы: сложения, вычитания матрицы, умножения матриц, умножения матрицы на число, транспонирования, вычисления определителя (по определению), обращения матрицы. Создание единичной матрицы.
3 Разработать шаблон класса TVector - одномерный массив; в качестве параметра шаблона использовать тип хранимых в массиве данных. Обеспечить методы: добавление элемента в начало, в конец, в произвольное место массива. Аналогично удаление. Реализовать методы: среднее арифметическое, среднее геометриче-ское, максимум, минимум, сортировка по убыванию и по возрастанию. Дополнительно: написать функцию построения ряда Фибоначчи, в качестве контейнера для хранения ряда использовать реализацию шаблона TVector для вещественных чисел.
4 Добавить в шаблон класса TFileOf операцию сортиров-ки файла.
5 Добавить в шаблон класса large операции вычитания и умножения.
6 Добавить в шаблон класса TString методы: DelDupSpaces - удаление дублированных пробелов, Tab2Space - замена табуляции на пробелы, CountWord - подсчет количества слов, CountSimb - подсчет коли-чества символов.
7 Доработать шаблоны классов TVector4 и TMatrix4 для обеспечения полной функциональности (аналогично лабораторной работе №3).
8 Добавить к классу Date метод определения дня недели.
9 Доработать класс Time - написать метод перевода разницы секунд в часы, минуты и секунды.
10 Разработать шаблон класса TComplex, обеспечить ему полную функциональность, необходимую для ком-плексных чисел, в качестве параметра шаблона - тип данных, используемых для хранения составляющих комплексного числа. Обеспечить операцию деления комплексных чисел.




 Форма заказа 

   Для удобства наших клиентов, проходящих обучение в ТУСУР-е, была создана форма заказа.
С помощью нее Вы можете БЕСПЛАТНО УЗНАТЬ СТОИМОСТЬ выполнения нужных Вам заданий и заказать выполнение работ по тем дисциплинам, которые Вам необходимы.
   Вы также можете прислать заявку по электронной почте на наш E-mail адрес tusur@kursovik.com

Пожалуйста заполните все необходимые поля формы:

Ваше имя:
Ваш город:
Ваша страна:
Ваш E-mail:
Сотовый:
ICQ:
Ваша учебная специальность:
Код для расчета варианта:

Список дисциплин, которые необходимо выполнить:

Пример заполнения: Методичка 'СИНЕРГЕТИКА ДЛЯ ПРОГРАММИСТОВ' В.М. Зюзьков
2 текстовые контрольные работы по заданиям в учебно-методическом пособии:
1. Контрольная работа №1 на стр 154 вариант 15
2. Контрольная работа №2 на стр 157 вариант 9


Чтобы приложить к заявке файл, нажмите кнопку
(максимальный размер файла не должен привышать 20 Мб)

ВНИМАНИЕ ! Если заданий много, нет смысла прикладывать методички (если они стандатрные) просто напишите автора, название методички и год издания - этого будет более чем достаточно, если какой-либо методички у нас не окажется - мы у Вас ее запросим отдельно в ходе перписки по заказу.


Работы необходимо выполнить до:


Введите код с картинки:
код


ВНИМАНИЕ ! На работу предоставляется гарантия - т.е. мы БЕСПЛАТНО внесем в ее текст все необходимые дополнения/изменения (в разумных пределах) если это потребуется в будущем (в течение 6-и месяцев). Другими словами - в течение полугода Вы можете обращаться с любыми мелкими доработками(дополнениями) этого заказа - всё сделаем бесплатно и в кратчайшие сроки. Если дополнения будут значительно существенными (более 20 процентов)), то тогда уже за отдельную плату. Практика показала, что с первого раза работу не принимают ни при каких обстоятельствах, даже если она выполнена безупречно, всё равно преподаватель находит там ошибки, а зачастую просто их выдумывает. Обычно работу удается защитить со второго или третьего раза, мы уже к этому привыкли. Мы будем исправлять ошибки в работе столько раз, сколько этого требует Ваш преподаватель.

© 2001-2016 kursovik.com