解释一下数学的log(对数)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解释一下数学的log(对数)相关的知识,希望对你有一定的参考价值。

对数可以理解成指数的逆运算,例如X^Y=a,则有log(x)(a)=y
(x为底a的对数)就可以理解为x的多少次方等于a呢?求得答案就是y次方这样。
以上是我本人的理解。其实对这些数学概念先不要怕他才能理解好,如果还是不理解建议多做题是最好的办法。
这里有一些比较专业的说法你也可以参考:
如果a^b=n,那么log(a)(n)=b。其中,a叫做“底数”,n叫做“真数”,b叫做“以a为底的n的对数”。
log(a)(n)函数叫做对数函数。对数函数中n的定义域是n>0,零和负数没有对数;a的定义域是a>0且a≠1。
对数性质:
1、a^(log(a)(b))=b
  2、log(a)(a^b)=b
  3、log(a)(MN)=log(a)(M)+log(a)(N);
  4、log(a)(M÷N)=log(a)(M)-log(a)(N);
  5、log(a)(M^n)=nlog(a)(M)
  6、log(a^n)M=1/nlog(a)(M)
参考技术A 2的5次方=32
所以32关于2的对数=5
记作
log2
32=5(2写在下面
32写上面)

HDU 1060 Leftmost Digit (数学log)

题意:给定一个数n,让你求出n的n次方的第一位数。

析:一看这个n快到int极限了,很明显不能直接做,要转化一下。由于这是指数,我们可以把指数拿下来。

也就是取对数,设ans = n ^ n,两边取以10为底对数 lg(ans) = n * lg(10),然后这个整数部分都是10的多次方,

没什么用,也就是说我们要的小数部分,然后再取指数,就OK了。还要注意要用long long因为可能超int了,第一次忘了,WA了。

代码如下:

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <vector>
#include <queue>
#include <cstring>
#include <cmath>

using namespace std;
typedef long long LL;

int main(){
    int n, T;  cin >> T;
    while(T--){
        cin >> n;
        double ans = n * log10(n);
        ans -= (LL)ans;//小数部分
        cout << (LL)pow(10, ans) << endl;
    }
    return 0;
}

 

以上是关于解释一下数学的log(对数)的主要内容,如果未能解决你的问题,请参考以下文章

log(数学符号)是什么意思

数学中log啥意思

log是啥函数,在数学中有啥作用?

数学-对数

HDU 1060 Leftmost Digit (数学log)

数学 - 概念回顾