import time
import random
class NuclearReactor:
def __init__(self):
self.temperature = 300 # Температура в °C
self.pressure = 100 # Давление в атмосферах
self.radiation = 50 # Уровень радиации в условных единицах
self.is_running = True
def monitor_systems(self):
"""Мониторинг текущего состояния реактора."""
print(f"Температура: {self.temperature}°C")
print(f"Давление: {self.pressure} атмосфер")
print(f"Радиация: {self.radiation} единиц")
def adjust_temperature(self):
"""Регулировка температуры реактора."""
if self.temperature > 500:
print("[АВАРИЯ] Температура слишком высокая! Охлаждение включено.")
self.temperature -= 50
elif self.temperature < 250:
print("[ВНИМАНИЕ] Температура слишком низкая. Повышение мощности.")
self.temperature += 20
def adjust_pressure(self):
"""Регулировка давления реактора."""
if self.pressure > 150:
print("[АВАРИЯ] Давление превышает допустимый уровень! Выпуск пара.")
self.pressure -= 20
elif self.pressure < 80:
print("[ВНИМАНИЕ] Давление слишком низкое. Увеличение мощности насоса.")
self.pressure += 10
def check_radiation(self):
"""Проверка уровня радиации."""
if self.radiation > 100:
print("[КРИТИЧЕСКАЯ АВАРИЯ] Уровень радиации превышен! Срочная эвакуация.")
self.shutdown_reactor()
elif self.radiation > 75:
print("[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.")
def shutdown_reactor(self):
"""Остановка реактора в случае аварии."""
print("[ОСТАНОВКА] Реактор отключен для предотвращения аварии.")
self.is_running = False
def simulate_conditions(self):
"""Симуляция изменения условий в реакторе."""
self.temperature += random.randint(-10, 15)
self.pressure += random.randint(-5, 10)
self.radiation += random.randint(-2, 5)
def run(self):
"""Основной цикл работы реактора."""
print("Запуск системы управления ядерным реактором...")
while self.is_running:
print("\n--- Мониторинг системы ---")
self.monitor_systems()
self.simulate_conditions()
self.adjust_temperature()
self.adjust_pressure()
self.check_radiation()
time.sleep(2) # Имитация задержки для мониторинга
# Запуск симуляции
if __name__ == "__main__":
reactor = NuclearReactor()
reactor.run()
Программа выше представляет собой учебную симуляцию управления ядерным реактором. Вот её основные функции:
Мониторинг систем: Вывод текущей температуры, давления и уровня радиации.
Регулировка параметров: Логика для охлаждения или увеличения мощности в зависимости от условий.
Аварийные сценарии: Реактор автоматически отключается, если уровень радиации достигает критического уровня.
Симуляция: Параметры случайным образом изменяются в пределах заданных диапазонов, чтобы имитировать поведение системы.
Запустите эту программу, чтобы увидеть, как система реагирует на различные сценарии
Запуск системы управления ядерным реактором...
--- Мониторинг системы ---
Температура: 300°C
Давление: 100 атмосфер
Радиация: 50 единиц
--- Мониторинг системы ---
Температура: 308°C
Давление: 107 атмосфер
Радиация: 55 единиц
--- Мониторинг системы ---
Температура: 317°C
Давление: 106 атмосфер
Радиация: 59 единиц
--- Мониторинг системы ---
Температура: 312°C
Давление: 107 атмосфер
Радиация: 60 единиц
--- Мониторинг системы ---
Температура: 324°C
Давление: 108 атмосфер
Радиация: 61 единиц
--- Мониторинг системы ---
Температура: 326°C
Давление: 115 атмосфер
Радиация: 61 единиц
--- Мониторинг системы ---
Температура: 334°C
Давление: 125 атмосфер
Радиация: 60 единиц
--- Мониторинг системы ---
Температура: 338°C
Давление: 123 атмосфер
Радиация: 64 единиц
--- Мониторинг системы ---
Температура: 353°C
Давление: 129 атмосфер
Радиация: 65 единиц
--- Мониторинг системы ---
Температура: 348°C
Давление: 136 атмосфер
Радиация: 70 единиц
--- Мониторинг системы ---
Температура: 341°C
Давление: 135 атмосфер
Радиация: 73 единиц
--- Мониторинг системы ---
Температура: 348°C
Давление: 143 атмосфер
Радиация: 75 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 345°C
Давление: 145 атмосфер
Радиация: 78 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 353°C
Давление: 144 атмосфер
Радиация: 79 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 367°C
Давление: 144 атмосфер
Радиация: 78 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 357°C
Давление: 139 атмосфер
Радиация: 80 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 364°C
Давление: 147 атмосфер
Радиация: 81 единиц
[АВАРИЯ] Давление превышает допустимый уровень! Выпуск пара.
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 362°C
Давление: 131 атмосфер
Радиация: 86 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 362°C
Давление: 134 атмосфер
Радиация: 89 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 373°C
Давление: 142 атмосфер
Радиация: 94 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 375°C
Давление: 145 атмосфер
Радиация: 92 единиц
[АВАРИЯ] Давление превышает допустимый уровень! Выпуск пара.
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 372°C
Давление: 134 атмосфер
Радиация: 96 единиц
[ВНИМАНИЕ] Уровень радиации высокий. Проверьте системы защиты.
--- Мониторинг системы ---
Температура: 377°C
Давление: 141 атмосфер
Радиация: 100 единиц
[КРИТИЧЕСКАЯ АВАРИЯ] Уровень радиации превышен! Срочная эвакуация.
[ОСТАНОВКА] Реактор отключен для предотвращения аварии.