
2 семестр ФИБС / Информатика / ИДЗ Беляев / идз1
.docxМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В.И. Ульянова (Ленина)
Кафедра ИИСТ
отчет
по индивидуальному домашнему заданию №1
по дисциплине «Информатика»
Тема: «Пользовательский тип C++»
Студент гр |
|
|
Преподаватель |
|
Беляев Ф.Я. |
Санкт-Петербург
2020
Оглавление
Задания: 3
Протокол выполнения заданий 4
Создать пользовательский тип, описывающий машину 4
Создать функцию, которая возвращает экземпляр пользовательского типа, заполненный пользователем 4
Создать функцию которая принимает экземпляр пользовательского типа в качестве параметра и выводит его на экран 5
Код 6
Вывод 6
Цель работы: освоить пользовательский тип на C++, обработка его параметров.
Задания:
Создать пользовательский тип, описывающий машину.
Создать функцию, которая возвращает экземпляр пользовательского типа, заполненный пользователем.
Создать функцию которая принимает экземпляр пользовательского типа в качестве параметра и выводит его на экран.
Протокол выполнения заданий
Создать пользовательский тип, описывающий машину
Строчки 4-10 содержат выполненное первое задание: я создал структуру с именем «Car», которой прописал 6 параметров, описывающих машину: бренд, модель, цвет, мощность, год выпуска и количество сидений соответственно по строчкам.
Создать функцию, которая возвращает экземпляр пользовательского типа, заполненный пользователем
Строчки 13-28 содержат функцию, которую и требовалось создать: она возвращает экземпляр «car» пользовательского типа (в нашем случае – «Сar»), которому пользователь задаёт необходимые параметры (в нашем случае – все те параметры, которые содержит тип (см. 1ое задание)). Программа принимает значения через потоковое «cin». В 33 строчке задаётся переменная пользовательского типа, которая далее по 34 строчке принимает свои параметры через описанную функцию.
Создать функцию которая принимает экземпляр пользовательского типа в качестве параметра и выводит его на экран
Строчки 30-36 содержат функцию, которую и требовалось создать: они принимает экземпляр пользовательского типа в качестве параметра («Car a»), и выводит его составляющие, которые были заданы по прошлому заданию на экран через потоковое «cout». Строчка 43 вызывает эту функцию. Отмечу, что идёт она после ранее заданной функции, вызов которой на данном скриншоте расположен на 42 строчке. Осталось проверить работу программы:
Всё работает согласно заданию.
Код
#include <iostream>
using namespace std;
struct Car {
char brand[30];
char model[30];
char color[30];
int volume;
int year;
int count_seat;
};
Car input() {
Car car;
cout << "Введите бренд машины: ";
cin >> car.brand;
cout << "Введите модель машины: ";
cin >> car.model;
cout << "Введите цвет машины: ";
cin >> car.color;
cout << "Введите мощность машины: ";
cin >> car.volume;
cout << "Введите год выпуска машины: ";
cin >> car.year;
cout << "Введите число сидений в вашей машине: ";
cin >> car.count_seat;
return car;
}
void parametrs(Car a) {
cout << endl << "Бренд и модель вашей машны соответственно: " << a.brand << " " << a.model << endl;
cout << "Цвет вашей машины: " << a.color << endl;
cout << "Объем двигателя: " << a.volume << " л.c." << endl;
cout << "Год выпуска вашей машины: " << a.year << endl;
cout << "Число сидений в вашей машине: " << a.count_seat << endl;
}
int main(int argc, char** argv)
{
system("chcp 1251 > nul");
Car car;
car = input();
parametrs(car);
return 0;
}
Вывод
Создал пользовательский тип, описывающий машину – «struct Car», который может «принять» бренд, модель, цвет, мощность, год выпуска и количество сидений в машине.
Создал функцию «input ()», которая возвращает экземпляр пользовательского типа, заполненный пользователем.
Создал функцию «parametrs(Car a)», которая принимает экземпляр пользовательского типа в качестве параметра и выводит его на экран.