Kiszámolja az oldat koncentrációját
-------------
import math
class KemiaiOldat:
"""Kémiai oldatokat reprezentáló osztály mérnöki számításokhoz."""
def __init__(self, anyagmennyiseg_mol: float, terfogat_liter: float, savas_e: bool = True):
self.mol = anyagmennyiseg_mol
self.liter = terfogat_liter
self.savas_e = savas_e
def molaritas(self) -> float:
"""Kiszámolja az oldat koncentrációját (mol/dm^3)."""
if self.liter <= 0:
raise ValueError("A térfogatnak nagyobbnak kell lennie 0-nál!")
return self.mol / self.liter
def pH_ertek(self) -> float:
"""Becsült pH érték számítása erős savakra vagy bázisokra."""
c = self.molaritas()
if c <= 0:
return 0.0
# pH = -log10(c) erős sav esetén, pOH erős bázisnál
ertek = -math.log10(c)
if self.savas_e:
return ertek
else:
return 14.0 - ertek
# Példa az objektum használatára:
# Készítsünk egy 0.1 mol/dm^3-es sósav (savas) oldatot
sosav = KemiaiOldat(anyagmennyiseg_mol=0.1, terfogat_liter=1.0, savas_e=True)
print(f"Koncentráció: {sosav.molaritas():.3f} mol/l")
print(f"Becsült pH: {sosav.pH_ertek():.2f}")
...............
Koncentráció: 0.100 mol/l
Becsült pH: 1.00
Nincsenek megjegyzések:
Megjegyzés küldése