📄 fnbase.html~
字号:
<html>
<head>
<title>BT²IL::Float Number::Base 浮点数基本运算</title>
<link rel="stylesheet" href="bt2il.css" type="text/css">
</head>
<body>
<h1>BT²IL::Float Number::Base 浮点数基本运算</h1>
<p>浮点数的基本运算主要有四则运算、符号处理、大小比较,以及浮点数分柝等。</p>
<p>包含头文件 "fn.hpp"</p>
<pre class="example-code">#include "fn.hpp"</pre>
<h2>浮点数基本运算</h2>
<p>浮点数的基本运算中有加、减、乘、除、取负、相等比较等。</p>
<h3>加减乘除</h3>
<p>加、减、乘、除四个运算极为相似,都是需要两个参数,结果当然也是浮
点数了。</p>
<p>例子:</p>
<pre class="example-code">// 加 减 乘 除
btil::fn::plus<f1, f2>::value // f1+f2 的结果
btil::fn::minus<f1, f2>::value // f1-f2 的结果
btil::fn::multiplies<f1, f2>::value // f1*f2 的结果
btil::fn::divides<f1, f2>::value // f1/f2 的结果
plus<f1, f2>::value::f_val // f1+f2 的结果的值
struct one { static const double f_val = 1.0; } // 两个浮点数
struct two { static const double f_val = 2.0; }
minus<two, plus<divides<one, two>::value, one>::value
>::value::f_val == 0.5;
</pre>
<h3>取负</h3>
<p>取负运算就是取一个浮点数的负数。</p>
<p>例子:</p>
<pre class="example-code">// 取负
btil::fn::negate<f>::value // -f 的结果
negate<one>::value::f_val == -1.0;
negate<two>::value::f_val == -2.0;
</pre>
<h3>相等比较</h3>
<p>比较两个浮点数是否相等。当然了,是近似相等。比较的办法是把两个数相
除,然后再去与 1 比较,如果相差在 1E-16 之内,则认为相等。注意,这个的
结果是布尔值(true 或 false)。</p>
<p>例子:</p>
<pre class="example-code">// 浮点数 相等比较
btil::fn::equal<f1, f2>::value // f1 与 f2 是否近似相等
equal<one, two>::value == false;
equal<one, one>::value == true;
</pre>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -