DmitrMakeev commited on
Commit
64891c1
·
verified ·
1 Parent(s): 3ed682f

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +48 -0
app.py CHANGED
@@ -719,6 +719,54 @@ fertilizers_db = {
719
 
720
 
721
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
722
 
723
 
724
 
 
719
 
720
 
721
 
722
+ class HydroCalculator:
723
+ def __init__(self, volume_liters=1.0):
724
+ self.volume = volume_liters # Объём воды в литрах
725
+ self.fertilizers = [] # Список: (удобрение, граммы)
726
+
727
+ def add_fertilizer(self, name, grams):
728
+ """Добавляет удобрение в раствор."""
729
+ if name not in fertilizers_db:
730
+ raise ValueError(f"Удобрение '{name}' не найдено в базе!")
731
+ self.fertilizers.append((name, grams))
732
+
733
+ def calculate_ppm(self):
734
+ """Считает концентрации элементов в ppm (мг/литр)."""
735
+ ppm = {}
736
+ for name, grams in self.fertilizers:
737
+ for element, ratio in fertilizers_db[name].items():
738
+ ppm[element] = ppm.get(element, 0) + (grams * ratio * 1000) / self.volume
739
+ return ppm
740
+
741
+ def print_report(self):
742
+ """Печатает красивый отчёт."""
743
+ ppm = self.calculate_ppm()
744
+ print("\nРезультат расчёта:")
745
+ print("-" * 40)
746
+ for element, value in ppm.items():
747
+ print(f"{element}: {value:.2f} ppm")
748
+ print("-" * 40)
749
+
750
+
751
+
752
+
753
+
754
+
755
+
756
+
757
+
758
+
759
+
760
+
761
+ # Создаём раствор на 10 литров
762
+ calc = HydroCalculator(volume_liters=10)
763
+
764
+ # Добавляем удобрения (название из базы + граммы)
765
+ calc.add_fertilizer("Кальциевая селитра", 100) # 100 г
766
+ calc.add_fertilizer("Сульфат магния", 50) # 50 г
767
+
768
+ # Выводим отчёт
769
+ calc.print_report()
770
 
771
 
772