Форум сайта python.su
Помогите пожалуйста решить задачу. Заранее спасибо!!!
(Прогноз численности населения) Бюро переписи прогнозирует численность населения на основе следующих данных:
- Одно рождение каждые 7 секунд
- Одна смерть каждые 13 секунд
- Один новый иммигрант каждые 45 секунд
Напишите программу для отображения численности населения для каждого из следующих 5 лет (2020 г., 2021 г., 2022 г.,. 2023 г., 2024 г.) Если в этом году население составляет 312032486 и один год имеет 365 дней.
Подсказка: в Python вы можно использовать оператор целочисленного деления // для выполнения деления. Результатом является целое число.
Например, 5 // 4 = 1 (не 1.25), а 10 // 4 = 2 (не 2.5).
Офлайн
Предлагаю крутить счётчик секунд от нуля до 5 лет и проверять, делится ли очередное значение на 7, 13, 45. Если делится – изменять численность населения.
Шутка.
В году 365*24*60*60=31536000 секунд.
Допустим, нам надо узнать, что будет через 2 года.
2 * 31536000 // 7 = 9010285
Столько было рождений за 2 года. Ну и с остальным так же.
Научиться считать, сколько будет людей через n лет. И вызвать эту функцию для 1,2,3,4,5.
Офлайн
Đây là giải pháp cho vấn đề:
Python
# Number of births per year
BIRTHS_PER_YEAR = 31557600 // 7
# Number of deaths per year
DEATHS_PER_YEAR = 31557600 // 13
# Number of immigrants per year
IMMIGRANTS_PER_YEAR = 31557600 // 45
# Population this year
POPULATION = 312032486
# Loop to calculate the population for each year
for year in range(2020, 2025):
# Number of new residents this year
NEW_RESIDENTS = BIRTHS_PER_YEAR - DEATHS_PER_YEAR + IMMIGRANTS_PER_YEAR
# Population next year
POPULATION = POPULATION + NEW_RESIDENTS
# Population output
print(f“Population in {year}: {POPULATION}”)
bitlife
Офлайн
Допустим, нам надо узнать, что будет через 2 года.
2 * 31536000 // 7 = 9010285
backrooms game
Отредактировано restdiscussion (Янв. 10, 2024 06:33:03)
Офлайн
Это интересная задача! Чтобы решить ее, можно рассчитать чистое изменение численности населения в год на основе рождаемости, смертности и уровня иммиграции. Вот краткий анализ:
Рождения за год:
(60 секунд × 60 минут × 24 часа × 365 дней)
/
7
(60 секунд × 60 минут × 24 часа × 365 дней)/7
Смерти за год:
(60 секунд × 60 минут × 24 часа × 365 дней)
/
13
(60 секунд × 60 минут × 24 часа × 365 дней)/13
Иммигранты за год:
(60 секунд × 60 минут × 24 часа × 365 дней)
/
45
(60 секунд × 60 минут × 24 часа × 365 дней)/45
Объедините эти данные, чтобы найти чистое изменение и обновить численность населения за каждый год. Для получения дополнительных ресурсов обратитесь к Google, это может помочь усовершенствовать ваш подход!
Офлайн
Надо решать уравнение для численности населения с двумя аргументами: текущее время и время рождения.N(t0,t): примерно такое diff(N(t0,t),t)=diff(N(t0,t)+born(t)*N - mort(t0)*N Первое слагаемое правой части - старение, второе уменьшение, третье прирост.
Офлайн