Имя? мое что-ли?
Мастер
(1559)
1 неделю назад
import math
def volume(B, L):
"""Вычисляет объем правильного платонова тела."""
if B == "tetrahedron":
return (L**3) * math.sqrt(2) / 12
elif B == "cube":
return L**3
elif B == "octahedron":
return (L**3) * math.sqrt(2) / 3
elif B == "dodecahedron":
return (L**3) * (15 + 7 * math.sqrt(5)) / 4
elif B == "icosahedron":
return (L**3) * (5 * (3 + math.sqrt(5))) / 12
else:
return None # Неизвестное тело
def surface_area(B, L):
"""Вычисляет площадь поверхности правильного платонова тела."""
if B == "tetrahedron":
return L**2 * math.sqrt(3)
elif B == "cube":
return 6 * L**2
elif B == "octahedron":
return 2 * math.sqrt(3) * L**2
elif B == "dodecahedron":
return 3 * math.sqrt(25 + 10 * math.sqrt(5)) * L**2
elif B == "icosahedron":
return 5 * math.sqrt(3) * L**2
else:
return None
def solve():
B, L, M = input().split()
L = float(L)
M = int(M)
V = volume(B, L)
if V is None:
print("Неизвестное платоново тело")
return
# Объем одного маленького тела
V_small = V / M
# Масса воды в исходном теле
diameter_nm = 0.28 # диаметр молекулы воды в нм
diameter_m = diameter_nm * 1e-9 # диаметр в метрах
mass_water = 2.99e-23 # масса молекулы воды в г
volume_water_molecule = (4/3) * math.pi * (diameter_m/2)**3
num_molecules = V / volume_water_molecule
mass_initial = num_molecules * mass_water
# Масса воды в одном маленьком теле
num_molecules_small = (V_small / volume_water_molecule)
mass_small = num_molecules_small * mass_water
#Изменение энергии (удельная теплота плавления умножить на изменение массы)
delta_energy = 330 * (mass_initial - M * mass_small) #Дж
#Перевод в наноджоули
delta_energy_nj = delta_energy * 1e9
print(delta_energy_nj)
solve()