c++ 5、数学计算标准函数

2020-04-28  本文已影响0人  八戒无戒

c++ 中cmath库中包含了各种用于数学计算的标准函数,以下纪录常用的数学计算方法

#include <iostream>
#include <stdio.h>
#include <CMATH>
using namespace std;

extern void math_calc();
int main()
{
    math_calc();
    return 0;
}

void math_calc()
{
    const double PI = 3.141592653589793238463;
    // cos 计算弧度角(double 型)的余弦
    cout << "cos(60°)="<<cos(PI / 3) << endl;

    // sin 计算弧度角(double 型)的正弦
    cout << "sin(30°)=" << sin(PI / 6) << endl;

    // tan 计算弧度角(double 型)的正切
    cout << "tan(30°)=" << tan(PI / 6) << endl;

    // log(d) 计算一个数的自然对数:log(x),以e为底
    printf("log(%f) = %f\n", 15.0, log(15.0));

    // log10(d) 计算一个数的以10为底的对数:log10(x),以10为底
    printf("log10(%f) = %f\n", 1000.0, log10(1000.0));

    // exp(d) 计算以自然常数e为底的指数:exp(x)
    printf("exp(%f) = %f\n", 5.0, exp(5.0));

    // exp2(d) 计算以2为底的指数:exp2(x)
    printf("exp2(%f) = %f\n",3.0, exp2(3.0));

    // pow(d, d)     计算x的y次方
    printf("pow(%f, %f) = %f\n", 2.0, 3.0, pow(2.0, 3.0));

    // hypot(d, d) 两个参数的平方总和的平方根,即勾股定理
    printf("hypot(%f, %f) = %f\n", 3.0, 4.0, hypot(3.0, 4.0));

    // sqrt(d) 计算x的平方根
    printf("sqrt(%f) = %f\n", 16.0, sqrt(16.0));

    // cbrt(d) 计算一个的立方根
    printf("cbrt(%f) = %f\n", 27.0, cbrt(27.0));

    // abs(i) 计算整数的绝对值
    printf("abs(%d) = %d\n", -5, abs(-5));

    // fabs(d)  计算浮点数的绝对值
    printf("fabs(%f) = %f\n", -5.58, fabs(-5.58));

    // floor(d) 向下取整
    printf("floor(%f) = %f\n", 5.58, floor(5.58));

    // ceil(d) 向上取整
    printf("ceil(%f) = %f\n", 5.58, ceil(5.58));

    // modf (d , d) 将一个浮点数分为整数和小数部分
    double fract, int_part;
    fract = modf(3.15, &int_part);
    printf("%f = %f + %f\n", 3.15, int_part, fract);
}

运行结果如下:

cos(60°)=0.5
sin(30°)=0.5
tan(30°)=0.57735
log(15.000000) = 2.708050
log10(1000.000000) = 3.000000
exp(5.000000) = 148.413159
exp2(3.000000) = 8.000000
pow(2.000000, 3.000000) = 8.000000
hypot(3.000000, 4.000000) = 5.000000
sqrt(16.000000) = 4.000000
cbrt(27.000000) = 3.000000
abs(-5) = 5
fabs(-5.580000) = 5.580000
floor(5.580000) = 5.000000
ceil(5.580000) = 6.000000
3.150000 = 3.000000 + 0.150000
上一篇 下一篇

猜你喜欢

热点阅读