You're not reading the latest revision of this page, which is
here.
Switch Case Statement
Use a switch/case statement to make sure your variables satisfy specific constraints
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | \begin{switch}
\begin{case}{<condition 1>}
<variable definitions>
\end{case}
\begin{case}{<condition 2>}
<variable definitions>
\end{case}
...
\begin{default}
<variable definitions>
\end{default}
\end{switch}
|
Every variable in a switch environment must have a default definition, but not a definition for every
single case environment. (see example below)
There is no limitation on how many case environments you can use inside a switch environment. The default
environment though is obligatory!
You can use switch/case statements globally and on question level.
Never use switch/case statements in combination with \randadjustIf
. It is meant as an alternative.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | \begin{variables}
\randint{a}{1}{5}
\function{f0}{10*a}
\begin{switch}
\begin{case}{a>3}
\number{c}{3}
\randrat{d}{1}{2}{3}{7}
\drawFromSet{m}{1,2,3}
\function{f}{2*a}
\derivative{g}{3x^2+sqrt(x)}{x}
\substitute{h}{sqrt(y)}{y}{g}
\string{s}{case 1}
\end{case}
\begin{case}{a=3}
\number{c}{5}
\end{case}
\begin{default}
\randint{c}{1}{10}
\randrat{d}{-2}{-1}{3}{7}
\drawFromSet{m}{-1,-2,-3}
\function{f}{-2*a}
\derivative{g}{-3x^2+sqrt(x)}{x}
\substitute{h}{sqrt(y)}{y}{g}
\string{s}{default case}
\end{default}
\end{switch}
\end{variables}
|