Док-8-Описание тестового примера (Готовое ДЗ неизвестного варианта (6))
Описание файла
Файл "Док-8-Описание тестового примера" внутри архива находится в папке "Готовое ДЗ неизвестного варианта (6)". Документ из архива "Готовое ДЗ неизвестного варианта (6)", который расположен в категории "". Всё это находится в предмете "объектно-ориентированное программирование (ооп)" из 3 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "объектно-ориентированное программирование (ооп)" в общих файлах.
Онлайн просмотр документа "Док-8-Описание тестового примера"
Текст из документа "Док-8-Описание тестового примера"
Московский государственный технический университет им. Н.Э.Баумана
____________________________________________________________________
Утверждаю: | _______________________ |
Большаков С.А. | "__"_____________2009 г. |
Домашнее задание по дисциплине ООП
“ Библиотека классов таблиц и их содержимого в виде текстовых ячеек ”
Описание тестового примера
(вид документа)
писчая бумага
(вид носителя)
4
(количество листов)
ИСПОЛНИТЕЛЬ: | |
студент группы ИУ5-31 | _______________________ |
Чёрненькая И.С. Вариант 30. | "__"_____________2009 г. |
Москва – 2009
________________________________________________________________
Оглавление
-
НАЗНАЧЕНИЕ ТЕСТОВОГО ПРИМЕРА 3
-
ОПИСАНИЕ ТЕСТОВОГО ПРИМЕРА 3
-
ДИАГРАММА ОБЪЕКТОВ ТЕСТОВОГО ПРИМЕРА 4
-
НАЗНАЧЕНИЕ ТЕСТОВОГО ПРИМЕРА
Тестовый пример предназначен для проверки работоспособности системы классов. Тестовый пример представляет собой последовательность вызова различных функций, которые изменяют созданные объекты. Последовательность вызова такова, чтобы проверить работоспособность каждого метода каждого класса. Тестовый пример осуществляет вывод результатов на консоль, что позволяет проконтролировать правильность выполнения необходимых методов.
-
ОПИСАНИЕ ТЕСТОВОГО ПРИМЕРА
Пункт Т3 | Комментарии | Фрагменты программы |
5.1.2.1. 5.1.3.1. 5.1.3.2. 5.1.3.5. 5.1.4.1. | Класс AbstStr должен содержать следующие поля: число ячеек в строке, цвет текста в строке, выравнивание в строке. Класс Str должен наследоваться от базового класса AbstStr. Класс Str должен быть контейнерным для класса sCell. Должен содержать в себе структуру – ячейки. Класс sCell должен иметь поля: текс, цвет текста и его порядковый номер. | Str STR1 = *new Str(); strcpy((char *)STR1.Alignment,"по центру"); strcpy((char *)STR1.TextColorStr,"RED"); STR1.number = 1; sCell Cell11; strcpy((char *)Cell11.Text,"Hello, World!!"); strcpy((char *)Cell11.TextColor,"RED"); STR1.AddCell(&Cell11); sCell Cell12; strcpy((char *)Cell12.Text,"I like programming."); strcpy((char *)Cell12.TextColor,"Blue"); STR1.AddCell(&Cell12); sCell Cell13; strcpy((char *)Cell13.Text,"I like reading."); strcpy((char *)Cell13.TextColor,"RED"); STR1.AddCell(&Cell13); sCell Cell14; strcpy((char *)Cell14.Text,"This is my project."); strcpy((char *)Cell14.TextColor,"RED"); STR1.AddCell(&Cell14); Str STR2=*new Str(); strcpy((char *)STR2.Alignment,"по левому краю"); strcpy((char *)STR2.TextColorStr,"GREEN"); STR2.number = 2; sCell Cell21; strcpy((char *)Cell21.Text,"Hellow, World!!"); strcpy((char *)Cell21.TextColor,"RED"); STR2.AddCell(&Cell21); sCell Cell22; strcpy((char *)Cell22.Text,"My name is Aleksander."); strcpy((char *)Cell22.TextColor,"GREEN"); STR2.AddCell(&Cell22); sCell Cell23; strcpy((char *)Cell23.Text,"I like reading."); strcpy((char *)Cell23.TextColor,"GREEN"); STR2.AddCell(&Cell23); |
Вывод меню | int c; do { clrscr(); cout.width(20); cout.fill('='); cout<<"Menu"; cout.width(20); cout.fill('='); cout<<endl; cout<<"1. Строка 1."<<endl; cout<<"2. Строка 2."<<endl; cout<<"3. Обмен ячейками между строками."<<endl; cout<<"4. Вычитание двух строк."<<endl; cout<<"5. Очистка ячейки."<<endl; cout<<"6. Объединение ячеек."<<endl; cout<<"7. Конкатенация списков и присваивание."<<endl; cout<<"8. Добавление текста в ячейку."<<endl; cout<<"9. Выход."<<endl; cout<<"Введите номер пункта меню: "<<endl; | |
5.1.2.2. | Класс AbstStr должен предоставлять пользователю возможность распечатать любой элемент объекта и любое поле объекта. . | switch (c) { case '1': clrscr(); cout << STR1; getch(); break; case '2': clrscr(); cout << STR2; getch(); break; |
5.1.3.3. 5.1.3.4. 5.1.4.2. | Класс Str должен уметь выполнять операции над списками – объединение, присваивание, удаление ячейки из строки, очистка ячейки, объединение ячеек в строке, обмен ячейками между строками. Класс Str должен содержать операции присваивания(=) и конкатенации объектов(+), а так же операцию инкремента(++), ссылки по номеру([]) и вычитание объектов(-). Класс sCell должен содержать ссылку на предыдущий и последующий элемент. | case '3': clrscr(); cout << "Обмен ячейками" << endl; sCell *Cell1 = &STR1[0]; sCell *Cell2 = &STR2[1]; if (!Cell2->Prev) STR2.First = Cell1; STR1.ExchangeCell(Cell1,Cell2); STR1.GetFirst(); cout << STR1<< endl; getch(); clrscr(); STR2.GetFirst(); cout << STR2<< endl; getch(); break; case '4': clrscr(); cout << "Вычитание двух строк" << endl; STR1.GetFirst(); STR2.GetFirst(); STR1 = STR1 - STR2; STR1.GetFirst(); cout << STR1; getch(); break; case '5': clrscr(); cout << "Очистка ячейки" << endl; STR1.GetFirst(); STR1.ClearCell(&Cell14); STR1.GetFirst(); cout << STR1; getch(); break; case '6': clrscr(); cout << "Объединение ячеек" << endl; STR2.GetFirst(); STR2.UnionCell(&Cell21); STR2.GetFirst(); cout << STR2; getch(); break; case '7': clrscr(); Str STR3; STR3=STR1+STR2; cout << "Конкатенация списков и присваивание" << endl; STR3.GetFirst(); cout << STR3; getch(); break; case '8': clrscr(); cout << "Добавление текста" << endl; STR2.GetFirst(); cout << STR2; getch(); clrscr(); STR2.GetFirst(); STR2.AddText("Congratulations!!"); cout << STR2; getch(); break; } |
. | Выход из программы | }while ((c=getchar()) !='9'); cout << "Программа завершена" ; } |
-
ДИАГРАММА ОБЪЕКТОВ ТЕСТОВОГО ПРИМЕРА
5