Описание тестового примера _ОТП_2014 (Методические указания к лабораторным работам), страница 2
Описание файла
Файл "Описание тестового примера _ОТП_2014" внутри архива находится в следующих папках: Методические указания к лабораторным работам, ЛР_15_КЛР_ПКШ. PDF-файл из архива "Методические указания к лабораторным работам", который расположен в категории "". Всё это находится в предмете "программирование на основе классов и шаблонов" из 2 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "программирование на основе классов и шаблонов" в общих файлах.
Просмотр PDF-файла онлайн
Текст 2 страницы из PDF
Пояснения текста фрагментаОписывается семь объектов домов для вызова разных конструкторов. Далее они попарнораспечатываются, для чего нужно нажимать клавишу Enter.2.4.2. Текст фрагмента программыcase 2:cout << "5.1.2 Создание объектов для домов улицы " << endl;{Home H1;Home H2("Жилой","д.2");Home H3("Жилой", "д.3", 3);Home H4("Жилой", "д.4а", 4,2);Home H5("ДЭЗ", "д.5", 5,2,3);Home H6("Жилой", "д.6", 6,2,3, fast);Home H7("Магазин", "д.7", 7,2,3, multiple , 5);H1.printOn(cout);H2.printOn(cout);getchar();H3.printOn(cout);H4.printOn(cout);getchar();H5.printOn(cout);H6.printOn(cout);getchar();H7.printOn(cout);}getchar();2.4.3. Результаты работы фрагмента программы2Enter5.1.2 Создание объектов для домов улицыНомер сп.
-0 Имя не заданоСимвольное имя не заданоНомер -0Этажей -0 Жителей -0Тип дома - простой Ремонт не нужен! Число квартир - 0Номер сп. -0 Имя - ЖилойНомер сим. -д.2Номер -0Этажей -0 Жителей -0Тип дома - простой Ремонт не нужен! Число квартир - 0EnterНомер сп.
-0 Имя - ЖилойНомер сим. -д.3Номер -3Этажей -0 Жителей -0Тип дома - простой Ремонт не нужен! Число квартир - 0Номер сп. -0 Имя - Жилой7Номер сим. -д.4аНомер -4Этажей -2 Жителей -0Тип дома - простой Ремонт не нужен! Число квартир - 0EnterНомер сп. -0 Имя - ДЭЗНомер сим. -д.5Номер -5Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 0Номер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 0EnterНомер сп.
-0 Имя - МагазинНомер сим. -д.7Номер -7Этажей -2 Жителей -3Тип дома - много строений Ремонт не нужен! Число квартир – 5Enter2.5.Фрагмент текста программы для проверки п.п.5.1.3 ТЗ2.5.1. Пояснения текста фрагментаОписываются 2 дома Н6 и Н7 с полным набором параметров. Далее дом Test создается на основедома Н6. Характеристики двух домов (Н6 и Test) распечатываются. Долее описывается указательна дом (pHome). Он инициализируется новым объектом, созданным на основе дома Н7.Характеристики двух домов (Н7 и динамического через pHome) распечатываются.
Динамическийсозданный дом удаляется через указатель.2.5.2. Текст фрагмента программыcase 3:cout << "5.1.3 Создание объектов для домов улицы на основе других " << endl;{Home H6("Жилой", "д.6", 6,2,3, fast, 100);Home H7("Магазин", "д.7", 7,2,3, multiple , 5);Home Test(H6);H6.printOn(cout);Test.printOn(cout);getchar();getchar();cout << "Указатель!!! " << endl;Home *pHome = new Home (H7);H7.printOn(cout);pHome->printOn(cout);delete pHome;}getchar();break;2.5.3.
Результаты работы фрагмента программы35.1.3 Создание объектов для домов улицы на основе другихНомер сп. -0 Имя - Жилой8Номер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 100Номер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 100EnterУказатель!!!Номер сп. -0 Имя - МагазинНомер сим.
-д.7Номер -7Этажей -2 Жителей -3Тип дома - много строений Ремонт не нужен! Число квартир - 5Номер сп. -0 Имя - МагазинНомер сим. -д.7Номер -7Этажей -2 Жителей -3Тип дома - много строений Ремонт не нужен! Число квартир - 5Enter2.6.Фрагмент текста программы для проверки п.п.5.1.4 ТЗ2.6.1. Пояснения текста фрагментаСоздаются два дома (H6 и H7) с полным набором параметров и распечатываются.2.6.2. Текст фрагмента программыcase 4:cout << "5.1.4 Учет свойств дома(см. ТЗ) " << endl;{Home H6("Жилой", "д.6", 6,2,3, fast, 100);H6.printOn(cout);Home H7("Магазин", "д.7", 7,2,3, multiple , 5);H7.printOn(cout);}getchar();getchar();break;2.6.3.
Результаты работы фрагмента программы45.1.4 Учет свойств дома(см. ТЗ)Номер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 100Номер сп. -0 Имя - МагазинНомер сим. -д.7Номер -7Этажей -2 Жителей -3Тип дома - много строений Ремонт не нужен! Число квартир - 59Enter2.7.Фрагмент текста программы для проверки п.п.5.1.5 ТЗ2.7.1. Пояснения текста фрагментаСоздается дом с полным набором характеристик (Н6).
С помощью метода getParamкласса Home получает основные характеристики дома iH (номер) , Etag (число этажей), Men(число жителей), Type (тип дома) , Apart (число квартир). Потом эти параметры отдельнораспечатываются. Тип дома определяет перечисление HomeType (fast, multiple, complex). Далеедемонстрируется метод setParam, для установки новых параметров дома и выполняется печать.Во второй части фрагмента определяется дом Н7 и с помощью метода setAllParamустанавливается признак ремонта (true) – 8-й параметр и параметры распечатываютсястандартным методом печати – printOn.2.7.2.
Текст фрагмента программыcase 5:cout << "5.1.5 Задание и получение характеристик дома " << endl;{Home H6("Жилой", "д.6", 6,2,3, fast, 100);H6.printOn(cout);int iH, Etag , Men , Apart ;HomeType Type;// ПолучениеH6.getParam(iH , Etag, Men, Type , Apart);cout << "Номер -" << iH <<" Этажей -" << Etag << " Жителей -" << Men << endl;if (Type == fast)cout << "Тип дома - простой ";if (Type == multiple)cout << "Тип дома - много строений ";if (Type == complex)cout << "Тип дома - сложный ";cout << " Число квартир - " << Apart << endl;H6.setParam( 11,12,13,fast, 15 );H6.printOn(cout);getchar();getchar();cout << "Признак ремонта!!! " << endl;Home H7("Магазин", "д.7", 7,2,3, multiple , 5);H7.printOn(cout);H7.setAllParam("Аптека", "10/8", 1,2,3,fast, 5 , true);H7.printOn(cout);}getchar();break;2.7.3.
Результаты работы фрагмента программы55.1.5 Задание и получение характеристик домаНомер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 10010Номер -6 Этажей -2 Жителей -3Тип дома - простой Число квартир - 100Номер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -11Этажей -12 Жителей -13Тип дома - простой Ремонт не нужен! Число квартир - 15EnterПризнак ремонта!!!Номер сп. -0 Имя - МагазинНомер сим. -д.7Номер -7Этажей -2 Жителей -3Тип дома - много строений Ремонт не нужен! Число квартир - 5Номер сп. -0 Имя - АптекаНомер сим.
-10/8Номер -1Этажей -2 Жителей -3Тип дома - простой Требуется ремонт! Число квартир – 5Enter2.8.Фрагмент текста программы для проверки п.п.5.1.6 ТЗ2.8.1. Пояснения текста фрагментаОписываются два дома Н1 и Н2 с различными параметрами. Третий дом Temp вычисляется спомощью перегруженной операции “+”. Исходные дома и полученный дом распечатываются(printOn).2.8.2. Текст фрагмента программыcase 6:cout << "5.1.6 Сложение двух домов " << endl;{Home H1("Жилой", "д.6", 6,2,3, fast , 3);Home H2("Ашан", "д.7", 9,10,11, multiple , 5);Home Temp;Temp = H1 + H2;H1.printOn(cout);H2.printOn(cout);Temp.printOn(cout);}getchar();getchar();break;2.8.3. Результаты работы фрагмента программы65.1.6 Сложение двух домовНомер сп.
-0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 3Номер сп. -0 Имя - АшанНомер сим. -д.7Номер -911Этажей -10 Жителей -11Тип дома - много строений Ремонт не нужен! Число квартир - 5Номер сп. -0 Имя - Жилой + АшанНомер сим. -д.6 + д.7Номер -6Этажей -2 Жителей -14Тип дома - сложный Ремонт не нужен! Число квартир – 8Enter2.9.Фрагмент текста программы для проверки п.п.5.1.7 ТЗ2.9.1. Пояснения текста фрагментаОписываются два дома: Н1 (с параметрами) и Temp (без параметров). Выполняется присваивание“=” домов. Дома распечатываются стандартным методом printOn.
Для иллюстрации того, чтодома являются самостоятельными объектами изменяется название дома Н1 (на “Перекресток”) иони снова распечатываются.2.9.2. Текст фрагмента программыcase 7:cout << "5.1.7 Перегрузить оператор присваивания для домов " << endl;{Home H1("Жилой", "д.6", 6,2,3, fast , 3);Home Temp;Temp = H1;H1.printOn(cout);Temp.printOn(cout);H1.setName("Перекресток");H1.printOn(cout);Temp.printOn(cout);}getchar();getchar();break;2.9.3. Результаты работы фрагмента программы75.1.7 Перегрузить оператор присваивания для домовНомер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 3Номер сп.
-0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 3Номер сп. -0 Имя - ПерекрестокСимвольное имя не заданоНомер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 312Номер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир – 3Enter2.10.Фрагмент текста программы для проверки п.п.5.1.8 ТЗ2.10.1. Пояснения текста фрагментаОписывается дом Н1 с характеристиками и его характеристики распечатываются спомощью стандартного метода printOn.2.10.2.
Текст фрагмента программыcase 8:cout << "5.1.8 Распечатка характеристик дома " << endl;{Home H1("Жилой", "д.6", 6,2,3, fast , 3);H1.printOn(cout);}getchar();getchar();break;2.10.3. Результаты работы фрагмента программы85.1.8 Распечатка характеристик домаНомер сп. -0 Имя - ЖилойНомер сим. -д.6Номер -6Этажей -2 Жителей -3Тип дома - простой Ремонт не нужен! Число квартир - 3Enter2.11.Фрагмент текста программы для проверки п.п.5.1.9 ТЗ2.11.1. Пояснения текста фрагментаОписана улица SNew и три дома Н1, Н2 и Н3. Улица улица распечатывается стандартнымметодом printOn.
Дома добавляются на улицу (метод add) и затем улица распечатываетсястандартным методом printOn. В распечатке улицы меняется число домов и появляется списокназваний домов.2.11.2. Текст фрагмента программыcase 9:cout << "5.1.9 Учет свойств улицы(см. ТЗ) " << endl;{Home H2("Жилой","д.2", 7,2,3, fast , 5);Home H3("Магазин", "д.3", 3);Home H4("ДЭЗ", "д.4а", 4,2);Street SNew("Улица" , 15);SNew.printOn(cout);SNew.add(&H2);SNew.add(&H3);SNew.add(&H4);SNew.printOn(cout);}getchar();13getchar();break;2.11.3. Результаты работы фрагмента программы95.1.9 Учет свойств улицы (см.