对数函数
/*
p_log_1.cpp
对数函数汇总
log2 以2为底
log 以e为底
log10 以10为底
logn:一般的数求对数,用换底公式
*/
#include<iostream>
#include<cmath>
using namespace std;
double log3(double x){ // 求解以3为底的对数值
return log(x) / log(3);
}
//通用求对数函数:换底公式
double logn(int n,double x) {
return log(x)/log(n);
}
int main() {
double x=8;
printf("以e为底的对数值为: %.1lf\n", log(x)); //以自然对数(以 e 为底)
// double x=100;
// printf("以10为底的对数值为: %.1lf\n", log10(x)); //以自然对数(以 e 为底)
// double x=8;
// printf("以2为底的对数值为: %.1lf\n", log2(x)); //以自然对数(以 e 为底)
// double x = 16;
// printf("以2为底的对数值为: %.1lf\n", logn(2,x));
// double x = 9;
// printf("以3为底的对数值为: %.1lf\n", log3(x));
//n=5 e=8 判断稠密图和稀疏图
// int n=5; //顶点数
// int e=8; //边数
// double t;
// //t=n*logn(2,n);
// t=n*log2(n);
// if (e>=t) cout<<"稠密图";
// else cout<<"稀疏图";
}