Articles
' Floor ' en ' plafond ' functies
Geplaatst op december 1, 2020 door admin Is er een gemakkelijke manier om de vloer of het plafond van een getal in te stellen, zonder de linker- en rechterdelen apart te coderen? Is er bijvoorbeeld een manier om $\ceil{x}$
te doen in plaats van $\lceil x \rceil$
?
Opmerkingen
Antwoord
\usepackage{mathtools} \DeclarePairedDelimiter{\ceil}{\lceil}{\rceil}
Het commando \ceil
is voldoende; indien aangeroepen als \ceil*{x}
zal het \left
en \right
toevoegen; je kunt het ook noemen als
\ceil[\big]{x} \ceil[\Big]{x} \ceil[\bigg]{x} \ceil[\Bigg]{x}
om expliciet de grootte van de scheidingstekens te vermelden.
Opmerkingen
- Zelfs na meer dan 10 jaar LaTeXing leert men nog steeds enkele nieuwe trucs!
- Zeg het me niet '! Ik leer zelfs na 25 jaar nieuwe trucs!
- @jamaicanworm Er is, geloof ik, ook op deze site. Maar ik heb ' niet gezegd: gebruik
\left
en\right
alleen als ze echt nodig. - @jamaicanworm De definitie van een opdracht met en zonder ster verwisselen bespreekt het omwisselen van de opdracht met ster met niet- versie met ster.
- Om de verdiepingsfunctie te zetten, vervangt u " ceil " door " verdieping ". Dit ligt misschien voor de hand, maar het kan u de moeite besparen om documentatie te raadplegen.
Antwoord
Hier is een eenvoudige xparse
implementatie van \ceil
, vergelijkbaar met die geleverd door mathtools
“\DeclarePairedDelimiter
:
\documentclass{article} \usepackage{xparse}% http://ctan.org/pkg/xparse \NewDocumentCommand{\ceil}{s O{} m}{% \IfBooleanTF{#1} % starred {\left\lceil#3\right\rceil} % \ceil*[..]{..} {#2\lceil#3#2\rceil} % \ceil[..]{..} } \begin{document} \[\ceil[\big]{x} \quad \ceil[\Big]{x} \quad \ceil[\bigg]{x} \quad \ceil[\Bigg]{x} \quad \ceil*[\big]{\frac{1}{2}}\] \end{document}
Het optionele argument wordt genegeerd in de versie met ster van \ceil*[..]{..}
.
Reacties
- Je zou de
\IfNoValueTF {\lceil#3\rceil}
kunnen verwijderen als je{s O{} m}
. Dan wordt het tweede arg#2
gedefinieerd, dus heb je alleen#2\lceil#3#2\rceil
nodig.
\lceil
en\rceil
de passende markeringen.$\lceil x \rceil$
al de oplossing die ik zocht;)