C++详细讲解常用math函数的用法

C++详细讲解常用math函数的用法

什么是math函数

在C++里,math是一个非常常用的库。它包含了一系列数学函数,例如对数、三角函数、指数、取整等等。其中一些函数在编程中非常常见,例如sin、cos、log等等,可以方便地实现各种数学运算。

库中的函数都需要使用数学常数和数学函数(例如自然数e和圆周率pi),因此需要先包含头文件。在使用之前应当确保自己已经理解了各个函数的语法和功能。本文将对常用的数学函数进行详细说明与代码示范。

常用math函数说明

一、取整函数

1. round()函数(四舍五入)

round()函数返回一个四舍五入的整数。例如:

double a = 22.45;
int b = round(a); // b为22

2. ceil()函数(向上取整)

ceil()函数返回比输入参数大的最小整数。例如:

double a = 22.45;
int b = ceil(a); // b为23

3. floor()函数(向下取整)

floor()函数返回比输入参数小的最大整数。例如:

double a = 22.45;
int b = floor(a); // b为22

二、指数函数

1. exp()函数

exp()函数返回自然对数的指数。例如:

double a = exp(2); // a为e的2次方约等于7.4

2. pow()函数

pow(x,y)函数返回x的y次方。例如:

double a = pow(2,3); //a为2的3次方等于8

三、三角函数

1. sin()函数

sin()函数返回角度的正弦值。角度必须是弧度制。例如:

double a = sin(30* M_PI / 180); // a为0.5

2. cos()函数

cos()函数返回角度的余弦值。角度必须是弧度制。例如:

double a = cos(60* M_PI / 180); // a为0.5

四、对数函数

1. log()函数

log()函数返回以e为底的对数。例如:

double a = log(2.72); // a为1

示例说明

下面给出一个示例,利用向上取整ceil()函数和指数函数pow()函数,计算折扣价格。例如,原价为100元,现在打折50%,则可得到折扣价为50元:

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    double original_price, discount_rate, discount_price;
    cout << "请输入原价和折扣(例如:打8折就输入0.8):" << endl;
    cin >> original_price >> discount_rate;

    discount_price = original_price * discount_rate;
    discount_price = ceil(discount_price * 100) / 100; // 保留两位小数,向上取整
    cout << "折扣价为:" << discount_price << endl;

    return 0;
}

输出结果:

请输入原价和折扣(例如:打8折就输入0.8):
100 0.5
折扣价为:50

结语

本文对于C++中常用math函数做了详细说明,并辅以代码示范。读者可以根据自己的需要选择相应的函数实现相关功能。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++详细讲解常用math函数的用法 - Python技术站

(0)
上一篇 2023年6月26日
下一篇 2023年6月26日

相关文章

  • PHP跨平台获取服务器IP地址自定义函数分享

    PHP跨平台获取服务器IP地址自定义函数分享攻略 在PHP中,获取服务器的IP地址是一项常见的任务。然而,由于不同操作系统和服务器环境的差异,获取IP地址的方法也会有所不同。为了实现跨平台的IP地址获取,我们可以编写一个自定义函数。下面是一个详细的攻略,包含了两个示例说明。 步骤一:创建自定义函数 首先,我们需要创建一个自定义函数,该函数将根据服务器环境返回…

    other 2023年7月31日
    00
  • new出来的对象中无法使用@autowired进行对象bean注入问题

    new出来的对象中无法使用@Autowired进行对象bean注入问题的解决攻略 在使用@Autowired注解进行对象bean注入时,Spring框架会自动扫描和管理由Spring容器创建的对象。然而,当我们使用new关键字手动创建对象时,Spring无法感知和管理这些对象,导致无法进行自动注入。 为了解决这个问题,可以采用以下两种方法: 方法一:使用Ap…

    other 2023年10月15日
    00
  • 在C语言编程中使用变量的基础教程

    在C语言编程中使用变量的基础教程 介绍 在C语言中,变量是用来存储数据的一种方式。它们可以用来保存各种类型的数据,如整数、浮点数、字符等。在本教程中,我们将学习如何声明变量、给变量赋值以及如何使用它们。 声明变量 在使用变量之前,我们需要先声明它们。变量的声明告诉编译器变量的名称和类型。C语言中的变量声明遵循以下语法: type variable_name;…

    other 2023年8月9日
    00
  • wordpress实现获取父类分类名称的方法

    想要在 WordPress 中获取一个分类的父级分类名称,需要使用到 get_category_parents() 函数。这个函数可通过一个分类 ID 或对象,返回该分类的所有父级分类名称。 以下是完整的攻略: 步骤一:确定需要获取的分类 ID 或对象 首先,我们需要获取到需要获取父级分类名称的分类 ID 或对象,可以通过以下两种方式获得: 第一种方式:使用…

    other 2023年6月27日
    00
  • 打造安全的Windows 2003服务器

    打造安全的Windows 2003服务器攻略 一、更新操作系统 安装最新的Windows 2003更新补丁,确保操作系统不会存在已知的安全漏洞。 安装或启用防火墙,防止未经授权的访问。 二、加强账户安全 设置强密码策略,要求密码长度、复杂度等。 关闭或删除不必要的默认账户,例如管理员、Guest账户。 禁用未使用的服务、端口、共享和组策略。 三、加强网络安全…

    other 2023年6月27日
    00
  • 怪物猎人ol 扩散弓选择与使用指南 装填术4蓄测试数据

    怪物猎人OL 扩散弓选择与使用指南 1. 装填术4蓄测试数据简介 装填术4蓄测试数据是怪物猎人OL中扩散弓的一种特殊技能组合。该技能组合可以提高扩散箭的威力和射程,使玩家在战斗中更加有效地击败怪物。 2. 如何选择装填术4蓄测试数据 在选择装填术4蓄测试数据时,需要考虑以下几个因素: 武器属性:不同的武器属性适合不同的怪物。根据目标怪物的弱点和抗性,选择相应…

    other 2023年10月16日
    00
  • 关于python:numpy中deg2rad和弧度之间的区别?

    在Python的NumPy库中,有两个函数可以用于角度和弧度之间的转换:deg2rad()和rad2deg()。本文将详细讲解deg2rad()和弧度之间的区别,包括使用方法和示例说明。 deg2rad()和弧度之间的区别 在数学中,角度和弧度都是用于测量角度的单位。角度是以度为单位的,而弧度是以弧度为单位的。在NumPy库中,deg2rad()函数可以将角…

    other 2023年5月7日
    00
  • markdown在表格中换行

    markdown在表格中换行 在编写文档时,表格是一个非常重要的元素,它被广泛应用于各种场合。而markdown作为一种流行的轻量级标记语言,也提供了表格的支持。但是,在markdown中,如果要在表格中换行,需要注意几个细节。 表格中的普通换行 在markdown表格中,如果要换行,可以使用行尾的两个空格+回车的方式实现。例如: | 列1 | 列2 | |…

    其他 2023年3月28日
    00
合作推广
合作推广
分享本页
返回顶部