Задание №7
Выполнить задания, используя контейнер list
.
Варианты заданий:
-
Создать класс с именем
Planet
для хранения следующей информации:название (string), количество спутников.
Создать массив планет с помощью контейнера
list
вmain()
.Занести в контейнер информацию о 9 планетах. Данные о планетах:
"Меркурий", 0
"Венера", 0
"Земля", 1
"Марс", 2
"Юпитер", 69
"Сатурн", 62
"Уран", 27
"Нептун", 14
"Плутон", 10Вывести массив планет на экран, используя функцию.
В цикле определите элемент, у которого максимальное количество спутников.
-
Создать класс:
class Card {
string title; // заглавие книги
string author; // автор
int number; // количество имеющихся экземпляров
public:
Card() : title(""), author(""), number(0) {}
Card(string t, string a, int n) : title(t), author(a), number(0) {}
};В программе создать
list
из объектов классаCard
(5 элементов).Распечатать список. Пользователь вводит автора, программа выводит книги автора или сообщение об их отсутствии.
-
Составить описание класса
Complex
для представления комплексных чисел с возможностью задания вещественной и мнимой частей числами типаdouble
. В программе создать список из объ ектов классаComplex
(6 элементов):(-1.2, 6.3)
,(4.0, 0.7)
,(7.2, -0.8)
,(5.3, 3.0)
,(-4.9, 6.6)
,(-9.3, 0.2)
. Распечатать список в виде:-1.2 + i * 6.3
4.1 + i * 0.7
7.2 - i * 0.8
5.3 + i * 3
-4.9 + i * 6.6
-9.3 + i * 0.2Сложите все числа (у комплексных чисел отдельно складываются действительные и мнимые части) и результирующее число выведите на экран.
-
Ниже представлен пример класса
Rectangle
(прямоугольник). Напишите программу для хранения объектов типаRectangle
вlist
(подсказка: не забудьте для классаRectangle
определить операторы<
и==
):class Rectangle {
double a; // ширина
double b; // длина
public:
Rectangle() : a(0), b(0) {}
Rectangle(double a, double bi) : a(a), b(b) {}
};Создать список объект ов типа
Rectangle
с помощью контейнераlist
вmain()
и сразу занести в него информацию о 6 объектах:(1.2, 6.3)
,(4.0, 0.7)
,(7.2, 0.8)
,(5.3, 3.0)
,(4.9, 6.6)
,(9.3, 0.2)
. Вывести список на экран таким образом, чтобы размеры каждого прямоугольника выводились в отдельной строке. Выведите на экран размеры прямоугольника, у которого наибольшая площадь. Напишите функцию вывода списка на экран. -
Создайте класс с именем
Date
, содержащий три закрытых поля типаint
, предназначенные для хранения дня, месяца и года (подсказка: не забудьте для классаDate
определить операторы<
и==
). Один из конструкторов класса должен инициализировать поля датой01.01.1970
, а другой конструктор — заданным набором значений. Создайте метод класса, который будет выводить значения полей на экран в формате11.05.2019
.Создать список объектов типа
Date
с помощью контейнераlist
вmain()
и сразу занести в него информацию о шести датах:(1, 2, 1963)
,(14, 7, 1995)
,(7, 12, 2088)
,(5, 3, 2030)
,(24, 9, 2013)
,(19, 9, 2020)
. Вывести список на экран таким образом, чтобы каждая дата выводились в отдельной строке. Создайте новый список, в который запишите даты первого списка, которые относятся к будущему. Выведите на экран второй список. Напишите функцию вывода списка на экран. -
Создайте класс с именем
Time
, содержащий три закрытых поля типаint
, предназначенные для хранения часов, минут и секунд. (Подсказка: не забудьте для классаTime
определить операторы<
и==
). Один из конструкторов класса должен инициализировать поля нулевыми значениями, а другой конструктор — заданным набором значений. Создайте метод класса, который будет выводить значения полей на экран в формате11:59:59.
Создать список объектов типа
Time
с помощью контейнераlist
вmain()
и сразу занести в него информацию о шести датах:(1, 2, 63)
,(14, 57, 19)
,(7, 32, 20)
,(5, 13, 23)
,(10, 19, 45)
,(19, 9, 59)
. Вывести список на экран таким образом, чтобы каждая дата выводились в отдельной строке. Создайте новый список, в который запишите даты первого списка, которые относятся к ночи (с0
до5
часов). Выведите на экра н второй список. Напишите функцию вывода списка на экран. -
Создать класс
Inventory
для учета товаров на складе. Класс содержит следующие закрытые компоненты:string item
– наименование товара,double cost
– стоимость,int on_hand
– количество (подсказка: не забудьте для классаInventory
определить операторы<
и==
). Один из конструкторов класса должен инициализировать поля нулевыми значениями, а другой конструктор — заданным набором значений.Создать список объектов типа
Inventory
с помощью контейнераlist
вmain()
и сразу занести в него информацию о шести объектах:("Отверка", 99, 0)
,("Молоток", 430, 10)
,("Гайки", 70, 100)
,("Профиль", 540, 0)
,("Уголок", 230, 9)
,("Доска", 350, 17)
. Вывести список на экран таким образом, чтобы каждый товар выводился в отдельной строке:Отверка - 99 - 0
Молоток - 430 - 10
Гайки - 70 - 100
Профиль - 540 - 0
Уголок - 230 - 9
Доска - 350 - 17Создайте новый список, в который объекты первого списка, у которых количество равно нулю. Выведите на экран второй список. Напишите функцию вывода списк а на экран.
-
Ниже представлен пример класса
Box
(коробка). Напишите программу для хранения объектов типаBox
в списке (подсказка: не забудьте для классаBox
определить операторы<
и==
)class Box {
double a; // ширина
double b; // высота
double c; // длина
public:
Box() : a(0), b(0), c(0) {}
Box(double a, double b, double c) : a(a), b(b), c(c) {}
};Создать массив объектов типа
Box
с помощью контейнераlist
вmain()
и сразу занести в него информацию о 6 объектах:(1, 2, 63)
,(14, 57, 19)
,(7, 32, 20)
,(5, 13, 23)
,(10, 19, 45)
,(19, 9, 59)
. Вывести список на экран таким образом, чтобы размеры каждой коробки выводились в отдельной строке. Выведите на экран размеры коробки, у которой наибольший объем. Напишите функцию вывода списка на экран. -
Ниже представлен пример класса
Graduate
(выпускник). Напишите программу для хранения объектов типаGraduate
в списке (подсказка: не забудьте для классаGraduate
определить операторы<
и==
):class Graduate {
string name; // фамилия
double rating; // рейтинг
public:
Graduate() {
name = "";
rating = 0;
}
Graduate(string Name, double Rating) {
name = Name;
rating = Rating;
}
};Создать список объектов с помощью контейнера
list
вmain()
и сразу занести в него информацию о 6 объектах:("Иванов", 99)
,("Петров", 430)
,("Семенов", 70)
,("Котов", 540)
,("Белых",230)
,("Черных", 350)
. Вывести список на экран таким образом, чтобы характеристики каждого объекта выводились в отдельной строке. Выведите на экран характеристики объекта, который имеет максимальный рейтинг. Увеличьте рейтинг каждого выпускника на число, которое введет пользователь и снова выведите список на экран. Напишите функцию вывода списка на экран. -
Ниже представлен пример класса
Point
. Напишите программу для хранения объектов типаPoint
в списке (подсказка: не забудьте для классаPoint
определить операторы<
и==
)class Point {
public:
double x, у;
Point() { x = у = 0; }
Point(double a, double b) {
x = а;
у = b;
}
};Создать массив точек с помощью контейнера
list
вmain()
и сразу занести в него информацию о 6 точках:(1.2, 6.3)
,(4.0, 0.7)
,(7.2, 0.8)
,(5.3, 3.0)
,(4.9, 6.6)
,(9.3, 0.2)
. Вывести список на экран таким образом, чтобы координаты каждой точки выводились в отдельной строке. Выведите на экран координаты точки, которая наиболее удалена от центра координат. Сдвиньте все точки влево по оси абцисс на расстояние, которое введет пользователь и снова выведите список на экран. Напишите функцию вывода списка на экран.