diff options
Diffstat (limited to '2.3-1/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci')
-rw-r--r-- | 2.3-1/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/2.3-1/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci b/2.3-1/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci new file mode 100644 index 00000000..87430bba --- /dev/null +++ b/2.3-1/tests/unit_tests/test100_recursivefunctions/scilabcode/RecursivePower.sci @@ -0,0 +1,23 @@ +//SCI2C: NIN= 2 +//SCI2C: NOUT= 1 +//SCI2C: OUT(1).TP= IN(1).TP +//SCI2C: OUT(1).SZ(1)= FA_SZ_1(IN(1).SZ) +//SCI2C: OUT(1).SZ(2)= FA_SZ_2(IN(1).SZ) +//SCI2C: DEFAULT_PRECISION= FLOAT
+
+function outrec = RecursivePower(in,pwrfct)
+
+
+if (pwrfct == 0)
+ outrec = ones(in);
+end
+
+if (pwrfct == 1)
+ outrec = in;
+end
+
+if (pwrfct > 1)
+ outrec = in .* RecursivePower(in,pwrfct-1);
+end
+
+endfunction
|