• C++数学运算、随机数


    C++数学运算

            在 C++ 中,除了可以创建各种函数,还包含了各种有用的函数供您使用。这些函数写在标准 C 和 C++ 库中,叫做内置函数。您可以在程序中引用这些函数。
            C++ 内置了丰富的数学函数,可对各种数字进行运算。下表列出了 C++ 中一些有用的内置的数学函数。
            为了利用这些函数,您需要引用数学头文件 

    序号函数 & 描述
    1double cos(double);
    该函数返回弧度角(double 型)的余弦。
    2double sin(double);
    该函数返回弧度角(double 型)的正弦。
    3double tan(double);
    该函数返回弧度角(double 型)的正切。
    4double log(double);
    该函数返回参数的自然对数。
    5double pow(double, double);
    假设第一个参数为 x,第二个参数为 y,则该函数返回 x 的 y 次方。
    6double hypot(double, double);
    该函数返回两个参数的平方总和的平方根,也就是说,参数为一个直角三角形的两个直角边,函数会返回斜边的长度。
    7double sqrt(double);
    该函数返回参数的平方根。
    8int abs(int);
    该函数返回整数的绝对值。该函数也可用于返回浮点数的绝对值。
    9double fabs(double);
    该函数返回任意一个浮点数的绝对值。该函数也可用于返回整数的绝对值。
    10double floor(double);
    该函数返回一个小于或等于传入参数的最大整数。

    举例如下:

     序号1-序号3

    1. #include
    2. #include
    3. // const double pi = acos(-1.0); // pi=3.14159
    4. #define pi 3.1415926
    5. int main()
    6. {
    7. //数字定义
    8. double s;
    9. //数字赋值
    10. s = pi/3; // s = pi/3表示的是弧度
    11. //数字输出
    12. std::cout << "double cos(s):" << cos(s) << std::endl; // 0.5
    13. std::cout << "double sin(s):" << sin(s) << std::endl; // 0.866
    14. std::cout << "double tan(s):" << tan(s) << std::endl; // 1.732
    15. return 0;
    16. }

    序号4 

    1. #include
    2. #include
    3. #define e 2.718281828459 // 定义自然底数e
    4. int main()
    5. {
    6. //数字定义
    7. double s;
    8. //数字输出
    9. std::cout << "double log(e):" << log(e) << std::endl; // 1
    10. return 0;
    11. }

     序号5-序号10

    1. #include
    2. #include
    3. #include
    4. int main()
    5. {
    6. //数字定义
    7. double a, b;
    8. a = 2;
    9. b = 3;
    10. //pow(a,b)函数返回a的b次方
    11. std::cout << "pow(2,3):" << pow(a,b) << std::endl; // 8
    12. // hypot()
    13. double a1, b1;
    14. a1 = 3;
    15. b1 = 4;
    16. std::cout << "double hypot(3,4):" << hypot(a1, b1) << std::endl; // 5
    17. // sqrt()
    18. std::cout << "double sqrt(4):" << sqrt(b1) << std::endl; // 2
    19. // int abs()
    20. double a2;
    21. a2 = -3.1;
    22. std::cout << "abs(-3.1):" << abs(a2) << std::endl; // 3.1
    23. int a3;
    24. a3 = -3;
    25. std::cout << "abs(-3):" << abs(a3) << std::endl; // 3
    26. // fabs()
    27. double a4;
    28. a4 = -3.12345;
    29. std::cout << "fabs(-3.12345):" << fabs(a4) << std::endl; // 3.12345
    30. // floor()
    31. double a5, a6;
    32. a5 = 3.12;
    33. std::cout << "floor(3.12):" << floor(a5) << std::endl; // 3
    34. a6 = -3.12;
    35. std::cout << "floor(-3.12):" << floor(a6) << std::endl; // -4
    36. return 0;
    37. }

    运行结果: 

    1. pow(2,3):8
    2. double hypot(3,4):5
    3. double sqrt(4):2
    4. abs(-3.1):3.1
    5. abs(-3):3
    6. fabs(-3.12345):3.12345
    7. floor(3.12):3
    8. floor(-3.12):-4

    C++ 随机数

            在许多情况下,需要生成随机数。关于随机数生成器,有两个相关的函数。一个是 rand(),该函数只返回一个伪随机数。生成随机数之前必须先调用 srand() 函数。

            下面是一个关于生成随机数的简单示例。示例中使用了 time() 函数来获取系统时间的秒数,通过调用 rand() 函数来生成随机数:

    1. #include
    2. #include
    3. #include
    4. int main()
    5. {
    6. int i, j;
    7. // 设置种子
    8. srand((unsigned)time(NULL));
    9. /* 生成 8 个随机数 */
    10. for (i = 0; i < 8; i++)
    11. {
    12. // 生成实际的随机数
    13. j = rand();
    14. std::cout << "随机数: " << j << std::endl;
    15. }
    16. return 0;
    17. }

    运行结果: 

    1. 随机数: 28916
    2. 随机数: 23414
    3. 随机数: 23467
    4. 随机数: 7694
    5. 随机数: 18261
    6. 随机数: 3547
    7. 随机数: 30756
    8. 随机数: 12521

  • 相关阅读:
    号称Java圣经,Github上爆火的1058页JVM全栈小册到底有什么魅力
    心中有码,自然快乐
    数据结构与算法——基本概念和术语
    Day1_9 Java学习之DQL语言与完整性约束
    DBeaver下载安装与使用
    设置环境变量不用重启的办法
    java基于Android快递物流服务系统
    Axure绘制数字加减器
    ubuntu云服务器怎么做好初始安全设置
    智能井盖传感器:高效守护城市道路安全
  • 原文地址:https://blog.csdn.net/m0_48241022/article/details/133484659