Попробуем отследить последовательность:
1) Начало: я-0, папа-25, мама-25, подруга-0, магазин-0
2) Беру в долг у родителей: я-50, папа-0, мама-0, подруга-0, магазин-0
3) Трачу деньги в магазине: я-5, папа-0, мама-0, подруга-0, магазин-45
4) Даю в долг подруге: я-2, папа-0, мама-0, подруга-3, магазин-45
5) Отдаю по рублю родителям: я-0, папа-1, мама-1, подруга-3, магазин-45
6) Подруга отдаёт долг: я-3, папа-1, мама-1, подруга-0, магазин-45
Если суммировать я+папа+мама+подруга+магазин, то получается 50 рублей.
Ошибка в том, что нельзя складывать долг перед родителями (48 руб.) с вашими деньгами, так как 48 рублей - это кредиторская задолженность, а 3 рубля - это дебиторская выплата вам.
48 должны вы, а 3 должны вам, поэтому эти величины с разным знаком.
Тогда получается правильно: 48+(-3)=45.
А 45 - это как раз и есть стоимость ваших покупок в магазине.