因此,我有一个名为的变量number
,其定义如下:
\def\number{0.25}
我想自动定义一个数字,它将给我1-number
(在本例中,它将给我0.75
)。我尝试这样做:
\def\othernumber{1-\number}
但是,这似乎不起作用。引擎似乎没有意识到我想\number
从中减去1
。有人能帮我修复这个语法吗?谢谢 :)
答案1
答案2
您可以使用xparse
和xfp
(后者允许动态计算):
\documentclass{article}
\usepackage{xparse,xfp}
\ExplSyntaxOn
\NewDocumentCommand{\defineconstant}{mm}
{
\cs_new:Npx #1 { \fp_eval:n { #2 } }
}
\ExplSyntaxOff
\begin{document}
\defineconstant{\constantA}{0.25}
\defineconstant{\constantB}{1-\constantA}
\defineconstant{\constantC}{round(sqrt(\constantA),2)+\constantB/2}
The value of \verb|\constantA| is \constantA
The value of \verb|\constantB| is \constantB
The value of \verb|\constantC| is \constantC
\fpeval{round(\constantA-\constantC+exp(2),4)}
\end{document}