Mercurial > octave-dspies
diff test/classdef/foo_value_class.m @ 15961:3e782e337f8d classdef
Rename classdef test class foo_payment to foo_value_class
* test/classdef/foo_value_class.m: Rename foo_payment -> foo_value_class.
* test/classdef/module.mk: Ditto.
* test/classdef/test_classdef.m: Ditto.
author | Ben Abbott <bpabbott@mac.com> |
---|---|
date | Thu, 17 Jan 2013 17:23:58 -0500 |
parents | test/classdef/foo_payment.m@db6371b97fed |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/classdef/foo_value_class.m Thu Jan 17 17:23:58 2013 -0500 @@ -0,0 +1,28 @@ +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 +