nRoot().afl
上传用户:shiqiang
上传日期:2009-06-12
资源大小:1289k
文件大小:2k
源码类别:

金融证券系统

开发平台:

Others

  1. //------------------------------------------------------------------------------
  2. //
  3. //  Formula Name:    nRoot()
  4. //  Author/Uploader: Antonio Marra 
  5. //  E-mail:          ant.marra@virgilio.it
  6. //  Date/Time Added: 2004-07-20 15:08:34
  7. //  Origin:          
  8. //  Keywords:        root sqrt
  9. //  Level:           basic
  10. //  Flags:           showemail,function
  11. //  Formula URL:     http://www.amibroker.com/library/formula.php?id=366
  12. //  Details URL:     http://www.amibroker.com/library/detail.php?id=366
  13. //
  14. //------------------------------------------------------------------------------
  15. //
  16. //  This function calculates the n-root of a number or array.
  17. //
  18. //------------------------------------------------------------------------------
  19. /*_______________________________________________________________________________________ 
  20.   SYNTAX:
  21.          nRoot(index,number)
  22.   
  23.   PURPOSE:
  24.           This function calculates the n-root of a number or array.
  25.           The n-root of a negative number returns a zero value. 
  26.   
  27.   HOW TO USE:
  28.           Copy this file in your "include" directory or append it to another file
  29.           that You use as "functions database".
  30.   EXAMPLE:
  31.           1. if you want to calculate the square-root of 100, you can use
  32.              indifferently:
  33.              Square_root = Sqrt(100);
  34.              or
  35.              n_Root = nRoot(2,100);
  36.           2. if you want to calculate the cube-root of 100 or whatever:
  37.              n_Root = nRoot(3,100);
  38.              n_Root = nRoot(10,100);
  39.              n_Root = nRoot(-2,Close);
  40.   ______________________________________________________________________________________  
  41.                                                                                         */
  42. Function nRoot(index,number)
  43. {    
  44.     cond_r = index == 0 or number == 0 or number < 0;
  45.     If_True = 0;
  46.     If_False = (Exp ( (1 / index) * Log(number)));
  47.     result = iif(cond_r, If_True, If_False);
  48.     
  49.     Return result;
  50. }