
Написати програму c++, в якій створити class Human з полями name, day, mоnth, year, та методом
age(), який обчислює вік людини.

Ответы на вопрос

Ответ:
#include <iostream>
#include <string>
using namespace std;
class Human {
public:
Human (string name, int day, int month, int year) : name_(move(name)), day_(day), month_(month), year_(year) {}
int age() {
int days = time(0) / (24 * 3600) + 365 * 1970;
return (days - day_ - month_ * 30 - year_* 365) / 365;
}
private:
string name_;
int day_;
int month_;
int year_;
};
int main () {
Human lol("S", 1, 1, 2000);
cout << lol.age();
}



Звісно, ось приклад програми на C++, яка відповідає вашим вимогам:
cpp#include <iostream>
#include <string>
#include <ctime>
class Human {
private:
std::string name;
int day;
int month;
int year;
public:
Human(std::string n, int d, int m, int y) : name(n), day(d), month(m), year(y) {}
int age() {
std::time_t now = std::time(0);
std::tm* birthDate = std::localtime(&now);
birthDate->tm_year = year - 1900;
birthDate->tm_mon = month - 1;
birthDate->tm_mday = day;
std::time_t birthTime = std::mktime(birthDate);
std::time_t currentTime = std::time(0);
double seconds = std::difftime(currentTime, birthTime);
int ageYears = static_cast<int>(seconds / (60 * 60 * 24 * 365.25));
return ageYears;
}
};
int main() {
std::string name;
int day, month, year;
std::cout << "Enter name: ";
std::cin >> name;
std::cout << "Enter birth day: ";
std::cin >> day;
std::cout << "Enter birth month: ";
std::cin >> month;
std::cout << "Enter birth year: ";
std::cin >> year;
Human person(name, day, month, year);
int age = person.age();
std::cout << "Age of " << person.getName() << " is " << age << " years." << std::endl;
return 0;
}
Ця програма створює клас Human
з полями name
, day
, month
та year
, а також методом age()
, який обчислює вік людини на основі поточної дати та дати народження. У головній функції (main
) ви можете ввести ім'я та дату народження людини, а потім програма виведе її вік.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili