Wpis z mikrobloga

#programowanie #python #algorytmy
Mirki, robię program do rozliczania wydatków w mieszkaniu studenckim na 3 osoby i próbuję ogarnąć jakiś wzór na wyliczanie kto komu ma ile oddać.
Przykładowo:
osoba1 zrobiła zakupy za 50 dych
osoba2 za 45 zł
osoba3 za 28 zł

Moje próby w stylu

dlug_os1_os2 = dlug_os1_os2 + wydatek/3 - dlug_os2_os1
dlug_os3_os2 = dlug_os3_os2 + wydatek/3 - dlug_os2_os3

ni ch* nie chcą działać

I jak to teraz wyliczyć kto komu ma ile oddać?
Dzięki za pomoc z góry
  • 20
@sokytsinolop
6 zmiennych

dlug_os1_os2 #ile osoba pierwsza musi oddać drugiej
dlug_os1_os3 #ile osoba pierwsza musi oddać trzeciej

i tak dalej

mój pomysł na wzór jak napisałem w poście to było

dlug_os1_os2 = dlug_os1_os2 + wydatek/3 - dlug_os2_os1
dlug_os3_os2 = dlug_os3_os2 + wydatek/3 - dlug_os2_os3

i to działa dla pojedynczej zrzutki, ale jak dodawało się więcej wydatków to się psuło i jedna osoba nagle musiała oddawać więcej, a inna miała długi na minusie.
@Otek0: Prościej.
Szeregujesz osoby względem sumarycznych wydatków (A, B, C) i liczysz średnią wydatków (S).
Teraz są dwie możliwe sytuacje. Albo jedna osoba ma wydatki poniżej średniej, albo dwie (albo S jest w przedziale (A, B), albo w przedziale (B, C)
1. Jeśli jedna osoba ma wydatki poniżej średniej (osoba A) to musi oddać osobom B i C ich nadwyżkę nad średnią (osoba B dostaje B-S, osoba C dostaje C-S)
2.