📅 财经日历 📊 实时波动 📈 大盘云图 📶 行情走势 🆚 投机情绪 🚀 今日热点

    MQL4数学和三角函数(二)

    2013-08-13 · 6189 阅读
    • MathAbs() – 求绝对值
    • MathArccos() – 求反余弦
    • MathArcsin() – 求反正弦
    • MathArctan() – 求反正切
    • MathCeil() – 取最小整数
    • MathCos() – 求余弦
    • MathExp() – 求e的幂
    • MathFloor() – 取最大整数
    • MathLog() – 求自然对数
    • MathMax() – 求最大值
    • MathMin() – 求最小值
    • MathMod() – 求模
    • MathPow() – 求幂
    • MathRand() – 获取随机整数
    • MathRound() – 求四舍五入值
    • MathSin() – 求正弦
    • MathSqrt() – 求平方根
    • MathSrand() – 随机数设置
    • MathTan() – 求正切

    MathMax() – 求最大值[size=1em]
    1

    double MathMax(double value1, double value2)




    返回两个数值中最大值。
    参数:
    value1 - 第一个数值。value2 - 第二个数值。
    示例:
    [size=1em]
    1

    double result=MathMax(1.08,Bid);




    Back to Top

    MathMin() – 求最小值[size=1em]
    1

    double MathMin(double value1, double value2)




    返回两个数值中最小值。
    参数:
    value1 - 第一个数值。value2 - 第二个数值。
    示例:
    [size=1em]
    1

    double result=MathMin(1.08,Ask);




    Back to Top

    MathMod() – 求模[size=1em]
    1

    double MathMod(double value, double value2)




    此函数返回两个数相除的浮点型余数。
    MathMod函数计算x/y的浮点余数f,因此x=i*y+f,其中i是整数,f与x有相同的正负号,且f的绝对值要小于y的绝对值。
    参数:
    value1 - 被除数。value2 - 除数。
    示例:
    [size=1em]
    1

    2

    3

    4

    double x=-10.0,y=3.0,z;

    z=MathMod(x,y);

    Print("余数 ",x," / ",y," 为 ",z);

    //输出数据:  -10 / 3 的余数为 -1




    Back to Top

    MathPow() – 求幂[size=1em]
    1

    double MathPow(double base, double exponent)




    返回基数指定次方的值。
    参数:
    base - 基数。exponent - 指数值。
    示例:
    [size=1em]
    1

    2

    3

    4

    double x=2.0,y=3.0,z;

    z=MathPow(x,y);

    Printf(x," 的",y,"次乘方为", z);

    //输出数据: 2 的 3次乘方为8




    Back to Top

    MathRand() – 获取随机整数[size=1em]
    1

    int MathRand()




    MathRand函数返回一个在0到32767范围内的伪随机整数。在调用MathRand之前,需要先使用 MathSrand() 函数。
    示例:
    [size=1em]
    1

    2

    3

    4

    MathSrand(TimeLocal());

    // 显示 10 个数字.

    for(int i=0;i<10;i++ )

    Print("随机数 ", MathRand());




    Back to Top

    MathRound() – 求四舍五入值[size=1em]
    1

    double MathRound(double value)




    返回四舍五入到最接近指定数值的整数。
    参数:
    value - 要四舍五入的值。
    示例:
    [size=1em]
    1

    2

    3

    4

    5

    6

    double y=MathRound(2.8);

    Print("The round of 2.8 is ",y);

    y=MathRound(2.4);

    Print("The round of -2.4 is ",y);

    //输出 : The round of 2.8 is 3

    //      The round of -2.4 is -2




    Back to Top

    MathSin() – 求正弦[size=1em]
    1

    double MathSin(double value)




    返回指定角的正弦。
    参数:
    value - 弧度表示的角度值。
    示例:
    [size=1em]
    1

    2

    3

    4

    5

    6

    7

    8

    9

    double pi=3.1415926535;

    double x, y;

    x=pi/2;

    y=MathSin(x);

    Print("MathSin(",x,") = ",y);

    y=MathCos(x);

    Print("MathCos(",x,") = ",y);

    //输出: MathSin(1.5708)=1

    //      MathCos(1.5708)=0




    Back to Top

    MathSqrt() – 求平方根[size=1em]
    1

    double MathSqrt(double x)




    MathSgrt函数返回x的平方根。如果x为负值,返回无穷大(NaN)。
    参数:
    x - 求平方根的数值。
    示例:
    [size=1em]
    1

    2

    3

    4

    5

    6

    7

    double question=45.35, answer;

    answer=MathSqrt(question);

    if(question<0)

      Print("Error: MathSqrt returns ",answer," answer");

    else

      Print("The square root of ",question," is ", answer);

    //输出:  45.35 的平方根是 6.73




    Back to Top

    MathSrand() – 随机数设置[size=1em]
    1

    void MathSrand(int seed)




    MathSrand()函数为生成一组伪随机整数设置一个起点。为了重新初始化随机数生成器,使用1作为种子。用其它数值作为种子可以将生成器设定到一个随机起点。用 MathRand 取回已生成的伪随机数。在调用MathSrand()之前,调用MathRand函数和用1作为种子调用MathSrand函数都会生成相同的随机数。
    参数:
    seed - 生成随机数的种子。
    示例:
    [size=1em]
    1

    2

    3

    4

    MathSrand(TimeLocal());

    // 显示 10 个 随机数.

    for(int i=0;i<10;i++ )

      Print("random value ", MathRand());




    Back to Top

    MathTan() – 求正切[size=1em]
    1

    double MathTan(double x)




    MathTan返回x的正切值。如果x大于等于263,或者x小于等于-263,这种情况下函数返回无穷大(NaN)
    参数:
    x - 弧度表示的角度值。
    示例:
    [size=1em]
    1

    2

    3

    4

    5

    double pi=3.1415926535;

    double x,y;

    x=MathTan(pi/4);

    Print("MathTan(",pi/4," = ",x);

    //输出: MathTan(0.7856)=1





    ""
    还没有人打赏,支持一下
    回复

    举报

     

    回答|共 5 个

    tqeyyuar LV3

    发表于 2014-11-13 15:04:00 | 显示全部楼层

    xiexiefenxiang

    fuckqq LV5

    发表于 2014-11-14 21:22:31 | 显示全部楼层

    看看,看看。谢谢。你要发,我也要发。

    小水滴 LV3

    发表于 2014-11-14 23:21:32 | 显示全部楼层

    下了  的确不错

    qq7926722 LV0

    发表于 2014-11-23 06:29:09 | 显示全部楼层

    nice!!!!!!!!!!!!

    春暖花开 LV6

    发表于 2014-11-27 06:29:28 | 显示全部楼层

    看看怎么样
    您需要登录后才可以回帖 登录 | 注册

    提醒: 禁止引战、谩骂、灌水内容

    微信二维码

    有问题联系客服