![如何在 Latex 中写出变量的取值范围?](https://linux22.com/image/337928/%E5%A6%82%E4%BD%95%E5%9C%A8%20Latex%20%E4%B8%AD%E5%86%99%E5%87%BA%E5%8F%98%E9%87%8F%E7%9A%84%E5%8F%96%E5%80%BC%E8%8C%83%E5%9B%B4%EF%BC%9F.png)
有没有更简单的方法来k = 1, 2, ..., 25
代替$k$ = $1$, $2$, \dots, $25$
?
答案1
忽略任何样式约定,这里有一个简短的包装器宏——判断这是否“更容易”:
\documentclass{article}
\usepackage{etoolbox}
\newcommand{\nrange}[4][]{%
#2=%
\ifblank{#1}{% Optional argument empty? Yes? Then omit the second number in the enumeration
#3, \dots ,#4%
}{%
#3, #1, \dots,#4%
}%
}
\begin{document}
$\nrange{k}{1}{25}$
$\nrange[2]{k}{1}{25}$
\end{document}
没有 etoolbox
包裹:
\documentclass{article}
\makeatletter
\newcommand{\nrange}[4][]{%
\def\@temp@a{#1}%
#2=%
\ifx\@temp@a\@empty
#3, \dots ,#4%
\else
#3, #1, \dots,#4%
\fi
}
\makeatother
\begin{document}
$\nrange{k}{1}{25}$
$\nrange[]{k}{1}{25}$
$\nrange[2]{k}{1}{25}$
\end{document}
答案2
永远不要说永远,但我想不出在数学模式之外应该使用数学运算符(包括 =)的情况,当您编写等式或以其他方式排版数学时。这似乎是人们常犯的一个错误。
放在全部的公式、方程、表达式、数学模式中的数学对象。
$k = 1, 2, \dots, 25$
$...$
主要不是指用数学方法表示这个符号。它绝不意味着用斜体表示。通常,它不是一种显示无法显示的符号的方法。$...$
并将\[...\]
您置于数学模式(分别为内联数学和显示数学),这是为编写数学而设置的模式。所有数学表达式都应该放在那里。它为您提供适当的间距、适当的格式,依赖于某些符号,诸如此类。此外,LaTeX 是关于逻辑结构的。如果您有一个数学对象,则应将其视为一个,并且所有内容都应放在 之间$...$
。
$...$
如果只是根据每个实体是否可以工作来将其封闭起来$...$
,那么将会发生许多糟糕的事情,请参见:
然而,这也有一些例外。
如果你正在写句子喜欢:
我们选择三个变量,A,b, 和C。
您可以选择这样写:
We select three variables, $a$, $b$, and $c$.
你这样做的原因是你可能会选择思考A,b和C作为更大句子内的单独数学对象,标点符号和单词属于该句子。
数学模式中的逗号可能看起来与数学模式之外的逗号不同,特别是当您在文档的其余部分使用与数学中使用的字体不同的字体时,或者只是使用不同的字体样式时。例如:
\textsf{We select three variables, $a$, $b$, and $c$. \quad We select
three variables, $a, b, \text{ and } c.$}