关于 fp 包:反正弦函数

关于 fp 包:反正弦函数

第 3/7 页 fp 封装我们看到反正弦函数的定义如下:

\FParcsin#1#2 % #1 := arcsin(#2)

我们可能还记得高中时的情况: 。我使用包Arcsin(0.5)=pi/6= 0.524 around得到的结果是 0。这对我来说很奇怪:Arcsin(0.5)fp

\documentclass{article}

\usepackage{fp}

\begin{document}
\FPdiv\pidivsix \FPpi 6 
\FParcsin \arcsinhalf 0.5 \\
\FParcsin \arcsinone 1 
Arcsin$(1)=\arcsinone$.\\
Arcsin$(\frac{1}{2})=\arcsinhalf$.\\
 This is a wrong answer the correct value is $\pidivsix$.

\end{document}

在此处输入图片描述

答案1

TeX 仅当满足以下条件时才会将数字字符串(带有可选的符号和可选的小数点或逗号)解释为十进制数:

当它寻找明确的维度时,在这种情况下表示十进制数的字符串必须后面跟着一个允许的单位。

不幸的是,文档以fp所示形式呈现语法,因为它可能表明它与其他编程语言相似,在涉及数字时具有更高的宽容度。

由于 TeX 主要是一个排版程序,因此它不会扫描数字,除非但这只能在使用原始命令时发生,而不是使用已定义的例如\FParcsin

该建议\FParcsin#1#2意味着#1#2是标准参数,因此应该用括号括起来(除非它们由单个标记组成)。所以

\FParcsin{\arcsinhalf}{0.5}

是正确的语法。这可以缩写为,\FParcsin\arcsinhalf{0.5}因为第一个参数是单个标记。

您可以安全地输入\FParcsin\arcsinone1,但最好遵循标准并输入\FParcsin\arcsinone{1},这样参数在视觉上也更清晰。

同样,你应该坚持

\FPdiv\pidivsix{\FPpi}{6}

出于同样的原因。代码\FPdiv\pidivsix \FPpi 6可以工作,但如果你尝试计算 10 的 pi,

\FPdiv\pidivten \FPpi 10

肯定会不是工作,并且应该

\FPdiv\pidivten {\FPpi} {10}

或者

\FPdiv\pidivten{\FPpi}{10}

寻找参数时会忽略空格,因此您可以自由地满足自己的喜好。

相关内容