TovaHasi commited on
Commit
9c24e16
1 Parent(s): da2504d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -11
app.py CHANGED
@@ -185,21 +185,21 @@ def get_array_CF_PV():
185
 
186
  profit = get_profit(array_amortization[idx], idx)
187
 
188
- array_CF.append(profit)
189
 
190
  cur_PV = get_PV(profit, array_discounting[idx])
191
 
192
- array_PV.append(cur_PV)
193
 
194
  return array_CF, array_PV
195
 
196
 
197
- def get_array_NPV():
198
- array_NPV = [array_PV[0]]
199
- for idx in range(1, Number_of_months + 1, 1):
200
- array_NPV.append(array_NPV[-1] + array_PV[idx])
201
- return array_NPV
202
-
203
 
204
  if st.button('Расчет эффективности'):
205
  Number_pallets, Number_machines, Number_employees = get_number_pallets_and_machines_employees()
@@ -207,13 +207,12 @@ if st.button('Расчет эффективности'):
207
  array_NPV = get_array_NPV()
208
 
209
  IRR = np_fin.irr(array_CF)
210
-
211
 
212
  st.write(f'Необходимое кол-во ричтраков {Number_machines}')
213
  st.write(f'Необходимое кол-во сотрудников {Number_employees}')
214
 
215
  st.write(f'NPV за {Number_of_months} месяцев:', array_NPV[-1])
216
- st.write(f'IRR на {Number_of_months} месяцев: {round(100 * IRR), 2}%')
217
 
218
  if array_NPV[-1] < 0:
219
  st.write(f'{Number_of_months} месяцев не хватает для окупаемости проекта')
@@ -226,4 +225,5 @@ if st.button('Расчет эффективности'):
226
  chart_data['PV'] = array_PV
227
  chart_data['NPV'] = array_NPV
228
 
229
- st.bar_chart(chart_data)
 
 
185
 
186
  profit = get_profit(array_amortization[idx], idx)
187
 
188
+ array_CF.append(round(profit))
189
 
190
  cur_PV = get_PV(profit, array_discounting[idx])
191
 
192
+ array_PV.append(round(cur_PV))
193
 
194
  return array_CF, array_PV
195
 
196
 
197
+ def get_id_first_positive_NPV(array_NPV):
198
+ for idx, npv in enumerate(array_NPV):
199
+ if npv > 0:
200
+ return idx
201
+ return len(array_NPV)
202
+
203
 
204
  if st.button('Расчет эффективности'):
205
  Number_pallets, Number_machines, Number_employees = get_number_pallets_and_machines_employees()
 
207
  array_NPV = get_array_NPV()
208
 
209
  IRR = np_fin.irr(array_CF)
 
210
 
211
  st.write(f'Необходимое кол-во ричтраков {Number_machines}')
212
  st.write(f'Необходимое кол-во сотрудников {Number_employees}')
213
 
214
  st.write(f'NPV за {Number_of_months} месяцев:', array_NPV[-1])
215
+ st.write(f'IRR на {Number_of_months} месяцев: {round(100 * IRR, 2)}%')
216
 
217
  if array_NPV[-1] < 0:
218
  st.write(f'{Number_of_months} месяцев не хватает для окупаемости проекта')
 
225
  chart_data['PV'] = array_PV
226
  chart_data['NPV'] = array_NPV
227
 
228
+ st.bar_chart(chart_data)
229
+