Файл: Отчет по лабораторной работе 1 Студент Иванова А. А. Ибс96 Преподаватель Воронцова И. О. Задание.docx
Добавлен: 12.01.2024
Просмотров: 59
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,
СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ
«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»
(СПбГУТ)
Факультет: Инфокоммуникационных сетей и систем
Кафедра: Защищённых систем связи
Дисциплина: Технологии и методы программирования
ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ № 1
Студент:
Иванова А. А.
ИБС-96
Преподаватель:
Воронцова И.О.
Задание
Вариант 13
В работе требуется сконструировать класс с заданным набором свойств. Набор свойств следует взять из лабораторной работы № 1 в соответствии со своим вариантом. В класс также должно быть добавлено достаточное количество методов для просмотра и редактирования значений любого из свойств.
Требования к конструированию класса: доступ к свойствам — закрытый, к методам — открытый. В классе следует предусмотреть конструктор по умолчанию, конструктор с параметрами.
Действия, выполняемые программой:
-
создание объекта с помощью конструктора по умолчанию -
создание объекта с помощью конструктора с параметрами -
создание массива объектов -
редактирование и просмотр свойств каждого объекта (можно однократное) -
обработка массива объектов в соответствии с заданием лабораторной работы 1.
Ввод исходных данных осуществляется с клавиатуры, вывод на экран.
Код
#include
#include
#include
using namespace std;
struct info {
string surname;
string sport;
string sports;
string club;
};
void input (int n, struct info* k)
{
ifstream file;
file.open("sport.txt");
for (int i = 0; i < n; i++)
file >> k[i].surname >> k[i].sport >> k[i].sports >> k[i].club;
file.close();
}
void output (int n, struct info* k)
{
cout << "Информация про спортсменов: " << endl;
for (int i = 0; i < n; i++) {
cout << k[i].surname << " " << k[i].sport << " " << k[i].sports << " " << k[i].club << endl;
}
}
void output_file (int n, struct info* k)
{
ofstream fileout;
fileout.open("sport2.txt");
for (int i = 0; i < n; i++)
fileout << k[i].surname << " " << k[i].sport << " " << k[i].sports << " " << k[i].club << endl;
fileout.close();
}
void calc (int n, struct info* k)
{
float s = 0;
for (int i = 0; i < n; i++) {
if (k[i].sports == "first") s = s+1;
}
cout << "Кол-во людей с первым разрядом: " << s << endl;
}
void edit (int n, struct info* k)
{
int i;
cout << "\n Введите номер строки для редактирования: ";
cin >> i;
cout << "Фамилия спортсмена: ";
cin >> k[i].surname;
cout << "Вид спорта: ";
cin >> k[i].sport;
cout << "Разряд: ";
cin >> k[i].sports;
cout << "Спортивнй клуб: ";
cin >> k[i].club;
}
int main()
{
setlocale(0,"Russian");
int n;
cout << "n = " << endl;
cin >> n;
struct info St[n];
input (n, St);
output (n, St);
calc (n, St);
edit (n, St);
output (n, St);
calc (n, St);
output_file (n, St);
return 0;
}
Консоль