Файл: Отчет по лабораторной работе 1 Студент Иванова А. А. Ибс96 Преподаватель Воронцова И. О. Задание.docx
Добавлен: 12.01.2024
Просмотров: 146
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»(СПбГУТ)Факультет: Инфокоммуникационных сетей и системКафедра: Защищённых систем связиДисциплина: Технологии и методы программирования ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ № 1 Студент:Иванова А. А. ИБС-96Преподаватель:Воронцова И.О.Задание Вариант 13В работе требуется сконструировать класс с заданным набором свойств. Набор свойств следует взять из лабораторной работы № 1 в соответствии со своим вариантом. В класс также должно быть добавлено достаточное количество методов для просмотра и редактирования значений любого из свойств. Требования к конструированию класса: доступ к свойствам — закрытый, к методам — открытый. В классе следует предусмотреть конструктор по умолчанию, конструктор с параметрами. Действия, выполняемые программой: #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;}Консоль
-
создание объекта с помощью конструктора по умолчанию -
создание объекта с помощью конструктора с параметрами -
создание массива объектов -
редактирование и просмотр свойств каждого объекта (можно однократное) -
обработка массива объектов в соответствии с заданием лабораторной работы 1.
}}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;}Консоль