首页 > 后端开发 > C++ > 正文

计算给定值的以10为底的对数的C++程序

PHPz
发布: 2023-09-07 17:45:20
转载
1474 人浏览过

计算给定值的以10为底的对数的C++程序

各种应用中的自然计算相对需要以 10 为底的对数。对于竞争性考试,有一些快速方法可以记住一些日志值。在编程时,有几种使用库函数计算对数结果的方法以及一些快捷方式。在这篇文章中,我们将介绍几种在 C++ 中计算给定数字的以 10 为底的对数的方法。

使用 log10() 函数

用于确定给定参数的以 10 为底的对数的库函数称为 log10()。响应可以是整数或浮点数。使用这个方法非常简单;您所要做的就是使用单个整数参数和 cmath 库调用该函数,让它为您计算以 10 为底的对数。让我们看一下语法和相关程序,看看它是如何使用的。

语法

#include < cmath >
log2( <number> )
登录后复制

算法

  • 以数字 x 作为输入
  • 使用 log10( x ) 计算 x 以 10 为底的对数
  • 返回结果。

示例

#include <iostream>
#include <cmath>
using namespace std;
float solve( int x ){
   float answer;
   answer = log10( x );
   return answer;
}
int main(){
   cout << "Log base 10 for input x = 100 is: " << solve( 100 ) << endl;
   cout << "Log base 10 for input x = 1000 is: " << solve( 1000 ) << endl;
   cout << "Log base 10 for input x = 5487 is: " << solve( 5487 ) << endl;
   cout << "Log base 10 for input x = 25479 is: " << solve( 25479 ) << endl;
}
登录后复制

输出

Log base 10 for input x = 100 is: 2
Log base 10 for input x = 1000 is: 3
Log base 10 for input x = 5487 is: 3.73934
Log base 10 for input x = 25479 is: 4.40618
登录后复制

使用具有其他底数的对数函数

对数的一些有趣的特征。我们可以从任意底数计算出另一底数的对数输出。要使用任何对数基数进行计算,请使用以下公式。

$$mathrm{log_{10}left ( x right )=frac{log_{k}left ( x right )}{log_{k}left ( 10 right )}}$ $

算法

  • 以数字 x 作为输入
  • nume := log-base-k ( x )
  • deno := log-base-k(10)
  • 返回(nume / deno)。

示例

#include <iostream>
#include <cmath>
using namespace std;
float solve( int x ){
   float nume, deno;
   nume = log( x );
   deno = log( 10 );
   return nume / deno;
}
int main(){
   cout << "Log base 10 for input x = 100 is: " << solve( 100 ) << endl;
   cout << "Log base 10 for input x = 1000 is: " << solve( 1000 ) << endl;
   cout << "Log base 10 for input x = 5487 is: " << solve( 5487 ) << endl;
   cout << "Log base 10 for input x = 25479 is: " << solve( 25479 ) << endl;
}
登录后复制

输出

Log base 10 for input x = 100 is: 2
Log base 10 for input x = 1000 is: 3
Log base 10 for input x = 5487 is: 3.73933
Log base 10 for input x = 25479 is: 4.40618
登录后复制

结论

cmath 包的 log10() 方法可用于计算以 10 为底的对数。结果将以整数或分数形式返回。另一种方法是使用不同的对数基数和简单的对数公式,如第二部分所示。为了获得更准确的结果,我们还可以利用数值方法使用二分法、牛顿-拉夫逊法或任何其他非线性方程求解技术来计算对数结果。

以上是计算给定值的以10为底的对数的C++程序的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:tutorialspoint.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!