ЗАДАЧА ПО ИНФОРМАТИКЕ Дан список сотрудников, содержащий N строк. Известны фамилия, пол, дата рождения и дата начала трудовой деятельности. Рассчитать возраст (в целых годах), и трудовой стаж.
Создать структуру данных для хранения информации о сотруднике (фамилия, пол, дата рождения, дата начала работы).
Считать данные о сотрудниках и сохранить их в список.
Для каждого сотрудника рассчитать возраст (в целых годах) и трудовой стаж.
Вывести результаты расчетов на экран.
Пример кода на Python:
from datetime import datetime # Создаем структуру данных для хранения информации о сотруднике class Employee: def __init__(self, last_name, gender, birth_date, start_date): self.last_name = last_name self.gender = gender self.birth_date = datetime.strptime(birth_date, "%Y-%m-%d") self.start_date = datetime.strptime(start_date, "%Y-%m-%d") # Считываем данные о сотрудниках employees_list = [] N = int(input("Введите количество сотрудников: ")) for _ in range(N): last_name, gender, birth_date, start_date = input().split() employees_list.append(Employee(last_name, gender, birth_date, start_date)) # Рассчитываем возраст и трудовой стаж for employee in employees_list: age = (datetime.now() - employee.birth_date).days // 365 experience = (datetime.now() - employee.start_date).days // 365 print(f"Сотрудник {employee.last_name}: возраст - {age} лет, трудовой стаж - {experience} лет")
Пример ввода и вывода:
Введите количество сотрудников: 2 Иванов М И 1990-05-15 2010-07-20 Петрова Ж Л 1985-10-30 2007-04-12 Сотрудник Иванов: возраст - 31 лет, трудовой стаж - 11 лет Сотрудник Петрова: возраст - 36 лет, трудовой стаж - 13 лет
Алгоритм решения задачи:
Создать структуру данных для хранения информации о сотруднике (фамилия, пол, дата рождения, дата начала работы).
Считать данные о сотрудниках и сохранить их в список.
Для каждого сотрудника рассчитать возраст (в целых годах) и трудовой стаж.
Вывести результаты расчетов на экран.
Пример кода на Python:
from datetime import datetime# Создаем структуру данных для хранения информации о сотруднике
class Employee:
def __init__(self, last_name, gender, birth_date, start_date):
self.last_name = last_name
self.gender = gender
self.birth_date = datetime.strptime(birth_date, "%Y-%m-%d")
self.start_date = datetime.strptime(start_date, "%Y-%m-%d")
# Считываем данные о сотрудниках
employees_list = []
N = int(input("Введите количество сотрудников: "))
for _ in range(N):
last_name, gender, birth_date, start_date = input().split()
employees_list.append(Employee(last_name, gender, birth_date, start_date))
# Рассчитываем возраст и трудовой стаж
for employee in employees_list:
age = (datetime.now() - employee.birth_date).days // 365
experience = (datetime.now() - employee.start_date).days // 365
print(f"Сотрудник {employee.last_name}: возраст - {age} лет, трудовой стаж - {experience} лет")
Пример ввода и вывода:
Введите количество сотрудников: 2Иванов М И 1990-05-15 2010-07-20
Петрова Ж Л 1985-10-30 2007-04-12
Сотрудник Иванов: возраст - 31 лет, трудовой стаж - 11 лет
Сотрудник Петрова: возраст - 36 лет, трудовой стаж - 13 лет