c++中的数学

#include <cmath> 是C++标准库中的数学头文件,提供了许多与数学相关的函数,例如三角函数、指数、对数、幂和常用数学常量等。这个头文件不需要额外安装,可以直接在代码中使用。

1.sqrt

sqrt(n) 是数学库cmath.h中的一个函数,用于求一个数的平方根。在C++中调用 sqrt(n) 的方式是,包含头文件 #include <cmath>,然后直接使用函数名调用 sqrt(n),其中 n 是一个数字。例如:

#include <iostream>
#include <cmath>

int main()
{
   double n = 16.0;
   double square_root = sqrt(n);
   std::cout << "The square root of " << n << " is " << square_root << std::endl;
   return 0;
}

那输出将会是

The square root of 16 is 4

2.fabs(x)

fabs(x) 是 C++ 标准库 <cmath> 中的一个函数,用于计算给定数字 x 的绝对值(即其正值)。该函数可以接受整数、浮点数或双精度浮点数作为参数,并返回其绝对值。

使用 fabs(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 fabs(x),其中 x 是一个数字。例如:

#include <iostream>
#include <cmath>

int main()
{
   int n = -5;
   float f = -3.14;
   double d = -10.5;

   int absolute_n = fabs(n);
   float absolute_f = fabs(f);
   double absolute_d = fabs(d);

   std::cout << "The absolute value of " << n << " is " << absolute_n << std::endl;
   std::cout << "The absolute value of " << f << " is " << absolute_f << std::endl;
   std::cout << "The absolute value of " << d << " is " << absolute_d << std::endl;

   return 0;
}

那输出将会是

The absolute value of -5 is 5
The absolute value of -3.14 is 3.14
The absolute value of -10.5 is 10.5

需要注意的是,fabs 函数的参数必须是数字类型,可以是整数、浮点数或双精度浮点数等。如果传递给 fabs 函数的参数不是数字类型,则会发生编译错误。

3.pow(x,y)

pow(x, y) 是 C++ 标准库 <cmath> 中的一个函数,用于计算 xy 次幂,即 x^y。该函数可以接受浮点数或双精度浮点数作为参数,并返回一个浮点数或双精度浮点数。

使用 pow(x, y) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 pow(x, y),其中 xy 都是数字。例如:

#include <iostream>
#include <cmath>

int main()
{
   double base = 2.0;
   double exponent = 3.0;

   double result = pow(base, exponent);

   std::cout << "2 raised to the power of 3 is: " << result << std::endl;

   return 0;
}

输出将会是:

2 raised to the power of 3 is: 8

需要注意的是,pow(x, y) 函数的参数必须是数字类型,可以是浮点数或双精度浮点数等。如果传递给 pow 函数的参数不是数字类型,则会发生编译错误。此外,由于计算精度的问题,使用 pow 函数时应注意当底数为负数、指数为分数、结果太大或太小等情况的处理。

4.ceil(x)

ceil(x) 是 C++ 标准库 <cmath> 中的一个函数,用于将给定的浮点数 x 向上取整,返回大于或等于 x 的最小整数值。函数的名称 "ceil" 表示 "ceiling",即天花板的意思。

使用 ceil(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 ceil(x),其中 x 是浮点数或双精度浮点数。例如:

#include <iostream>
#include <cmath>

int main()
{
   double x = 3.14;

   double result = ceil(x);

   std::cout << "Ceiling of " << x << " is: " << result << std::endl;

   return 0;
}

输出将会是:

Ceiling of 3.14 is: 4

在这个例子中,ceil(3.14) 返回大于或等于 3.14 的最小整数值,即 4。

需要注意的是,ceil(x) 函数的参数必须是浮点数或双精度浮点数,否则会发生编译错误。如果传递给 ceil 函数的参数是整数类型,将会首先进行隐式类型转换为浮点数类型。此外,如果 x 是负数,则 ceil(x) 将向上取整到离 x 最近的较大整数。

5.floor(x)

floor(x) 是 C++ 标准库 <cmath> 中的一个函数,用于将给定的浮点数 x 向下取整,返回小于或等于 x 的最大整数值。函数的名称 "floor" 表示 "地板" 的意思。

使用 floor(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 floor(x),其中 x 是浮点数或双精度浮点数。例如:

#include <iostream>
#include <cmath>

int main()
{
   double x = 3.14;

   double result = floor(x);

   std::cout << "Floor of " << x << " is: " << result << std::endl;

   return 0;
}

输出将会是:

Floor of 3.14 is: 3

在这个例子中,floor(3.14) 返回小于或等于 3.14 的最大整数值,即 3。

需要注意的是,floor(x) 函数的参数必须是浮点数或双精度浮点数,否则会发生编译错误。如果传递给 floor 函数的参数是整数类型,将会首先进行隐式类型转换为浮点数类型。此外,如果 x 是负数,则 floor(x) 将向下取整到离 x 最近的较小整数。

6.round(x)

round(x) 是 C++ 标准库 <cmath> 中的一个函数,用于将给定的浮点数 x 进行四舍五入,返回最接近 x 的整数值。

使用 round(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 round(x),其中 x 是浮点数或双精度浮点数。例如:

#include <iostream>
#include <cmath>

int main()
{
   double x = 3.6;

   double result = round(x);

   std::cout << "Rounded value of " << x << " is: " << result << std::endl;

   return 0;
}

输出将会是:

Rounded value of 3.6 is: 4

在这个例子中,round(3.6) 返回最接近 3.6 的整数值,即 4。注意,当小数部分大于等于 0.5 时,round(x) 结果会向上取整;当小数部分小于 0.5 时,round(x) 结果会向下取整。

需要注意的是,round(x) 函数的参数必须是浮点数或双精度浮点数,否则会发生编译错误。如果传递给 round 函数的参数是整数类型,将会首先进行隐式类型转换为浮点数类型。此外,如果 x 是负数,则 round(x) 结果会根据小数部分的值进行舍入操作。

7.sin(x)

sin(x) 是 C++ 标准库 <cmath> 中用于计算给定角度 x 的正弦值的函数。

使用 sin(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 sin(x),其中 x 是以弧度为单位的角度值。如果要将角度转换为弧度,可以使用 deg2rad 函数将角度转换为弧度。例如:

#include <iostream>
#include <cmath>

double deg2rad(double degrees)
{
   return degrees * M_PI / 180.0;
}

int main()
{
   double angle_degrees = 45.0;
   double angle_radians = deg2rad(angle_degrees);

   double sin_value = sin(angle_radians);

   std::cout << "sin(" << angle_degrees << " degrees) = " << sin_value << std::endl;

   return 0;
}

输出将会是:

sin(45 degrees) = 0.707107

在这个例子中,sin(45 degrees) 计算了角度为 45 度的正弦值,返回结果约为 0.707107。

需要注意的是,sin(x) 函数的参数必须是弧度值。如果传递给 sin 函数的角度是以度数表示,那么需要先将角度转换为弧度。另外,在使用 <cmath> 头文件之前,需要确保已经包含了正确的头文件,并且链接了数学库。

8.cos(x)

cos(x) 是 C++ 标准库 <cmath> 中用于计算给定角度 x 的余弦值的函数。

使用 cos(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 cos(x),其中 x 是以弧度为单位的角度值。如果要将角度转换为弧度,可以使用 deg2rad 函数将角度转换为弧度。例如:

#include <iostream>
#include <cmath>

double deg2rad(double degrees)
{
   return degrees * M_PI / 180.0;
}

int main()
{
   double angle_degrees = 60.0;
   double angle_radians = deg2rad(angle_degrees);

   double cos_value = cos(angle_radians);

   std::cout << "cos(" << angle_degrees << " degrees) = " << cos_value << std::endl;

   return 0;
}

输出将会是:

cos(60 degrees) = 0.5

在这个例子中,cos(60 degrees) 计算了角度为 60 度的余弦值,返回结果约为 0.5。

需要注意的是,cos(x) 函数的参数必须是弧度值。如果传递给 cos 函数的角度是以度数表示,那么需要先将角度转换为弧度。另外,在使用 <cmath> 头文件之前,需要确保已经包含了正确的头文件,并且链接了数学库。

9.tan(x)

tan(x) 是 C++ 标准库 <cmath> 中用于计算给定角度 x 的正切值的函数。

使用 tan(x) 的方法是包含头文件 #include <cmath>,然后直接使用函数名调用 tan(x),其中 x 是以弧度为单位的角度值。如果要将角度转换为弧度,可以使用 deg2rad 函数将角度转换为弧度。例如:

#include <iostream>
#include <cmath>

double deg2rad(double degrees)
{
   return degrees * M_PI / 180.0;
}

int main()
{
   double angle_degrees = 30.0;
   double angle_radians = deg2rad(angle_degrees);

   double tan_value = tan(angle_radians);

   std::cout << "tan(" << angle_degrees << " degrees) = " << tan_value << std::endl;

   return 0;
}

输出将会是:

tan(30 degrees) = 0.57735

在这个例子中,tan(30 degrees) 计算了角度为 30 度的正切值,返回结果约为 0.57735。

需要注意的是,tan(x) 函数的参数必须是弧度值。如果传递给 tan 函数的角度是以度数表示,那么需要先将角度转换为弧度。另外,在使用 <cmath> 头文件之前,需要确保已经包含了正确的头文件,并且链接了数学库。

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值