Контрольная работа по "Технологии программирования"
Автор: Sobolev Pavel • Октябрь 5, 2021 • Контрольная работа • 1,406 Слов (6 Страниц) • 298 Просмотры
САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ
УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ им. проф. М.А. Бонч-Бруевича
ИНСТИТУТ НЕПРЕРЫВНОГО ОБРАЗОВАНИЯ
Технологии программирования
Контрольная работа
Вариант №27
Фамилия: Соболев
Имя: Павел
Отчество: Евгеньевич
Курс: 4
Студ. Билет № : 1710027
Группа №: ИБ-82з
Дата сдачи работы: 19.09.2021г.
Тексты файлов с исходным кодом.
1. Главный модуль.
2. Заголовочный файл класса.
3. Файл реализации класса.
Главный модуль
// главный модуль
#include"museum.h"// подключаем заголовочный файл класса
using namespace std; // доступ к пространству имен std
void top(Museum a[]) // глобальная функция для поиска музея с наибольшим числом посетителей
{
int most, num = 0; // создаем локальные переменные для числа посетителей и номера объекта
for(int i = 0; i < 4; i++) // цикл, в котором происходит сравнение и выбор объекта по числу посетителей
{
if(a[i].get_att() > most)
{
most = a[i].get_att();
num = i;
}
}
cout<<"\nСамый посещаемый музей: "<<a[num].get_name()<<
", со средним показателем "<<a[num].get_att()<<" посетителей в год."<<endl; // выводим на экран искомое значение и название музея
}
2
int main() // главная функция
{
Museum A; // создаем объект класса Museum используя конструктор по умолчанию
Museum B("Эрмитаж", "Россия, Санкт-Петербург", 1764, 5328391); // используя конструктор с параметрами
Museum C[4]; // создаем массив из 4-х объектов
for(int i = 0; i < 4; i++) // цикл, в котором данные для объекта вводятся с клавиатуры,
{ // используя один из методов класса Museum
C[i].init();
}
cout << "\x1B[2J\x1B[H"; // очистка консоли перед выводом данных объектов
A.show(); // используя метод класса Museum, выводим его данные на экран
B.show();
for(int j = 0; j < 4; j++) // выводим на экран данные каждого из объектов в массиве
{
C[j].show();
}
top(C); // вызываем функцию поиска
return 0;
}
3
Заголовочный файл класса
// загаловочный файл класса
#include<iostream> // подключаем библиотеку ввода/вывода
#include<string> // библиотеку для работы со строками
class Museum // объявляем класс
{
private: // закрытая часть, доступ к данным возможен только с помощью методов этого класса и наследникам
std::string name; // название музея
std::string adress; // его адрес
int found_year; // год основания
int ave_att; // число посетителей в год
public: // открытая часть, методы доступны для вызова объектом любого класса
Museum(); // конструктор по умолчанию
Museum(std::string n, std::string a, int f_y, int a_a); // конструктор с параметрами
void init();// ввод данных для объекта с помощью клавиатуры
void show();// вывод данных объекта на экран
int get_att();// взятие значение пременной с числом посетителей
std::string get_name();// взятие значения переменной с названием музея
};// в заголовочном файле находятся только прототипы методов, реализация - в файле реализации
Файл реализации класса
// файл реализации класса Museum
#include"museum.h" // подключаем заголовочный файл
using namespace std;
// реализации методов класса
Museum::Museum()// конструктор по умолчанию
{
name = "Музей";
adress = "Страна, Город";
found_year = 0;
ave_att = 0;
}
4
Museum::Museum(string n, string a, int f_y, int a_a) // конструктор с параметрами
{
name = n;
adress = a;
found_year = f_y;
ave_att = a_a;
}
void Museum::init() // функция для ввода данных с клавиатуры
{
cout << "\x1B[2J\x1B[H"; // очистка консоли перед вводом данных
...