Mercurial > octave
view test/classdef/foo_value_class.m @ 33614:7f7d6bc5702b default tip @
maint: merge stable to default
author | Rik <rik@octave.org> |
---|---|
date | Mon, 20 May 2024 09:12:08 -0700 |
parents | e9a0469dedd9 |
children |
line wrap: on
line source
classdef foo_value_class properties rate; term; principle; end methods function obj = foo_value_class (r, t, p) if (nargin == 3) obj.rate = r; obj.term = t; obj.principle = p; elseif (nargin ~= 0) error ('foo_value_class:SyntaxError', ... 'foo_value_class: Invalid syntax') end end function amt = amount (obj) i = obj.rate / (12 * 100); if (i == 0 && obj.term == 0) amt = obj.principle; else amt = (obj.principle * i) / (1 - (1 + i)^(-obj.term)); end end end end