Поясню. (+)
Вы совершенно правы, когда говорите, что любой счёт, в зависимости от его назначения,
как правило имеет либо положительный либо отрицательный остаток. Это справедливо
и для счетов учёта наличных, и для счетов кредитов/депозитов. Это, своего рода,
неявное правило, выполнения которого программа не требует.
Могу добавить, что в моей базе данных все деньги, которые я взял в долг всегда
учитываются на счетах с отрицательными остатками. А те деньги, которые я выдал
в долг, они, соответственно, учитываются на счетах с положительным остатком.