Для решения вашей задачи, сначала мы объявим структуру Planetinfo, затем создадим класс Planet, который будет использовать эту структуру для хранения информации о планетах. Давайте пошагово разберем все необходимые элементы.
- Объявление структуры
Planetinfo:
struct Planetinfo {
std::string name; // имя планеты
int diameter; // диаметр планеты
bool hasLife; // наличие жизни
int moons; // количество луны
};
- Определение класса
Planet:
class Planet {
private:
Planetinfo zuna; // поле данных для хранения информации о планете
public:
// Конструктор
Planet() {}
// Деструктор
~Planet() {}
// Метод для чтения информации о планете
void GetPlanet() {
std::cout << "Введите имя планеты: ";
std::cin >> zuna.name;
std::cout << "Введите диаметр планеты (int): ";
std::cin >> zuna.diameter;
std::cout << "Есть ли жизнь на планете (0 - нет, 1 - да): ";
int life;
std::cin >> life;
zuna.hasLife = (life == 1);
std::cout << "Введите количество лун: ";
std::cin >> zuna.moons;
}
// Метод для печати информации о планете
void Print() const {
std::cout << "Планета: " << zuna.name << "\n"
<< "Диаметр: " << zuna.diameter << " км\n"
<< "Жизнь: " << (zuna.hasLife ? "Да" : "Нет") << "\n"
<< "Количество лун: " << zuna.moons << "\n\n";
}
};
- Основная функция
main():
#include <iostream>
#include <string>
const int NUM_PLANETS = 9; // Константа для количества планет
int main() {
Planet planets[NUM_PLANETS]; // Создание массива планет
// Циклический ввод данных о планетах
for (int i = 0; i < NUM_PLANETS; ++i) {
std::cout << "Введите информацию о планете " << (i + 1) << ":\n";
planets[i].GetPlanet();
}
// Печать информации о всех планетах
std::cout << "\nИнформация о планетах:\n";
for (int i = 0; i < NUM_PLANETS; ++i) {
planets[i].Print();
}
return 0;
}
Пояснение коду:
- В структуре
Planetinfoмы объявили переменные, которые будут хранить имя планеты, её диаметр, наличие жизни и количество лун. - Класс
Planetимеет методGetPlanet, который запрашивает у пользователя информацию о планете, и методPrint, который выводит эту информацию в удобном формате. - В функции
main()мы создаём массивplanetsдля хранения 9 планет. Затем, в цикле, мы запрашиваем информацию о каждой планете и выводим её.
В результате этого кода вы сможете удобно хранить и выводить информацию о планетах. Удачи в ваших учебных делах! Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать!