1、幂

幂是指数运算的结果,比如 可以看作b个a相乘,可以叫做a的b次幂,也可以叫做a的b次方。

在C/C++中,我们可以通过 pow(a,b)函数来对幂进行运算

2、对数

对数是对幂的逆运算,当a的b次方等于X时(a>0&&a!=1),即X = ,那么b叫做以a为底X的对数,a叫做对数的底数,X为真数,记作 b = (loga)X。

在C/C++中,我们可以用log2(X)来计算以2为底X的对数X

3、换底公式

高中数学我们学习对数的时候会推导出一个换底公式

所以在 C语言中,如果我们要求以 a 为底 b 的对数,只需要将底换成 2 求解即可

4、练习

leetcode:342. 4的幂 - 力扣(LeetCode)

给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true ;否则,返回 false 。

整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 

解题:

bool isPowerOfFour(int n){if(n <= 0) {return false;                          // (1)}int x = (int)(log2(n) / log2(4) + 1e-8);   // (2)return fabs(n - pow(4, x)) < 1e-8;         // (3)
}

(1)判断n<=0的特殊情况

(2)换底公式,并加上一个精度防止取整时出错

(3)浮点数相等判断

注意:

两个浮点数的判等需要采用 如下方式:fabs(a - b) < 0.00000001

Day01—— 幂和对数相关推荐

  1. Marioの《计算机程序设计艺术》读书笔记:数、幂与对数

    本期内容:卷一第一章 1.2.2 数.幂与对数 本章开始对数值数学的研究: 整数(integer number):...,-3,-2,-1,0,1,2,3,... 有理数(rational numbe ...

  2. 《算法零基础100讲》(第1讲) 幂和对数

    文章目录 零.写在前面 一.概念定义 1.幂 2.对数 3.换底公式 二.题目描述 三.算法详解 四.源码剖析 五.推荐专栏 六.习题练习 零.写在前面   目前本专栏正在进行优惠活动,在博主主页添加 ...

  3. math_常用放缩不等式及其变形@指数@对数@三角函数@一次函数

    文章目录 三角函数@对数@分式 x>0x>0x>0 x∈(0,12π)x\in(0,\frac{1}{2}\pi)x∈(0,21​π) 正弦正切 x∈(0,1)x\in(0,1)x∈ ...

  4. 对数运算法则(rule of logarithmic operations)

    运算法则公式如下: 1.lnx+ lny=lnxy 2.lnx-lny=ln(x/y) 3.lnxⁿ=nlnx 4.ln(ⁿ√x)=lnx/n 5.lne=1 6.ln1=0 拓展内容: 对数运算法则 ...

  5. 你这辈子可能都不需要看《计算机程序设计艺术》了!

    "欣哥, 我什么时候可以看<计算机程序设计艺术>? " "你这辈子可能都不需要看了!" 我在大学的时候并不知道<计算机程序设计艺术>(简 ...

  6. OpenCV图像运算+Moviepy实现视频旋转叠加

    ☞ ░ 前往老猿Python博客 https://blog.csdn.net/LaoYuanPython ░ 一.引言 在<OpenCV-Python常用图像运算:加减乘除幂开方对数及位运算&g ...

  7. Julia 数学运算和初等函数

    关注微信公共号:小程在线 关注CSDN博客:程志伟的博客 Julia数学运算和初等函数 1.算数运算符 julia> 5+9 14 julia> 9-5 4 julia> 5*9 4 ...

  8. pythonmathcot函数_math库是python语言的数学模块吗_Python中的数学模块:Math和Cmath

    Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 当我们在日常生活中编写程序时,我们通常遇到需要使用数学来完成任务的情况.像其他编程语言一样,Python提 ...

  9. python数学库函数包括求最大公约数函数吗_pythonmathcot函数_math库是python语言的数学模块吗_Python中的数学模块:...

    Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 当我们在日常生活中编写程序时,我们通常遇到需要使用数学来完成任务的情况.像其他编程语言一样,Python提 ...

最新文章

  1. asio::write RuntimeError
  2. 如何利用webmin在Linux主机中添加网站
  3. java计算两地距离(公里)
  4. linux-Centos 7下bond与vlan技术的结合
  5. OpenCV+python实现视频文件读写
  6. 推动Windows的限制:USER和GDI对象 - 第1部分
  7. 「一本通 4.1 例 3」校门外的树 (loj10115)
  8. 32蜂鸣器天空之城代码_stm32版蜂鸣器播放爱若琉璃
  9. WebLogic 服务器概述 与 部署 Java Web 应用
  10. 报错 xxx@1.0.0 dev D:\ webpack-dev-server --inline --progress --configbuild/webpack.dev.conf.js
  11. IDEA 设置控制台背景颜色
  12. 矩阵 向量 线性变换 基变换
  13. 断点续传 scp rsync
  14. 计算机组成原理——Part Three 性能指标
  15. h5页面使用js实现图片上传(安卓用户也可拍摄、相册二选一)
  16. Android输入法方法,Android的输入法系统框架原理
  17. 杭电c语言课程设计短学期第七次作业,杭电短学期数字电子钟整点报时系统实验报告...
  18. access是用来干什么的_Access数据库是做什么的?
  19. 基于ARCH模型股价波动率建模分析
  20. 如何安装免费正版office

热门文章

  1. android 3D 游戏实现之First Step
  2. CS101 2021Fall PA3,4 题解
  3. 180位数据彭友,DAMA认证备考之路,出发!
  4. jquery实现随机点名(点名器)
  5. Flutter 又一元老离职,感谢 Tim 这些年的付出
  6. ICO泡沫被刺破 区块链发展将回归正轨
  7. [STM32 ]内部独立看门狗IWDG
  8. mac新系统掉电快 关于Mac合盖睡眠后掉电快的解决方法
  9. 计算机英语 答案,计算机英语模拟试题1参考答案
  10. 事件监听watch框架vue2.x与3.x都适用