diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/jeopardy |
Initial commit
Diffstat (limited to 'macros/latex/contrib/jeopardy')
23 files changed, 2894 insertions, 0 deletions
diff --git a/macros/latex/contrib/jeopardy/README b/macros/latex/contrib/jeopardy/README new file mode 100644 index 0000000000..dcd452de41 --- /dev/null +++ b/macros/latex/contrib/jeopardy/README @@ -0,0 +1,18 @@ +The jeopardy.sty style allows to build the jeopardy game with +pdflatex. It is based on the jj_game.cls class and exerquiz.sty and +eforms.sty packages, written by D. P. Story. The author of the game +can use multichoice questions or fill-in questions. The answer for +fill-in questions is either a mathematical formula or a text string +(see the documentation of exerquiz.sty and \RespBoxMath and +\RespBoxTxt commands to learn more about all facilities). JavaScripts +are written to record the score. If the score is greater than a given +value, a hidden string is shown. The option picture allows to build +the game where the user uncovers parts of a hidden image. User should +use the style with some screen presentation package, such as web.sty +or pdfscreen.sty. The option twoplayers allows to build the game for two +players. + +To get jeopardy.sty file run "latex jeopardy.ins" command. Have a fun! + +Acknowledgement: Supported by the grant 18/2006 of the Fund for +Developement of Czech Universities. diff --git a/macros/latex/contrib/jeopardy/example/aleq.jpg b/macros/latex/contrib/jeopardy/example/aleq.jpg Binary files differnew file mode 100644 index 0000000000..ce9ba68840 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/aleq.jpg diff --git a/macros/latex/contrib/jeopardy/example/game1-two.pdf b/macros/latex/contrib/jeopardy/example/game1-two.pdf Binary files differnew file mode 100644 index 0000000000..94c216ea19 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1-two.pdf diff --git a/macros/latex/contrib/jeopardy/example/game1-two.tex b/macros/latex/contrib/jeopardy/example/game1-two.tex new file mode 100644 index 0000000000..e79bbc0fe5 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1-two.tex @@ -0,0 +1,77 @@ +\pdfoutput=1 + +\documentclass{article} +\usepackage[pdftex,designi]{web} +\usepackage[pdftex]{exerquiz} +\usepackage[ImplMulti,indefIntegral]{dljslib} +\usepackage[twoplayers] +{jeopardy} + + + +\begin{document} +\def\title{My Jeopardy} + +\SetGameHeight{100pt} + +\Celltoks{\textSize{20}} +% \GrandPoohbahtoks{\BG{0 1 1}\BC{1 1 0}\textColor{1 0 0 rg}} +\Scoretoks{\BG{0.8 0.8 0.8}} + + +\MakeGameBoard +\begin{category}{Prezidents} + \begin{question} + The surname of the prezident known for affair with Monica Lewinski. + \RespBoxTxt101{Clinton} + \end{question} + \begin{question} + The surname of the curent prezident of Russia (November 2006). + \RespBoxTxt101{Putin} + \end{question} + \begin{question} + The surname of the first prezident of Czech Republic (October 1918). + \RespBoxTxt101{Masaryk} + \end{question} +\end{category} +\begin{category}{Calculus} + \begin{question} + The main object of interest in Calculus is/are + \Ans0 money + \Ans0 women + \Ans1 functions + \Ans0 vectors + \Ans0 poor people + \end{question} + \begin{question} + Derivative of $x+\sin(x)=$? + \RespBoxMath{1+cos(x)}{6}{0.001}{[1,2]} + \end{question} + \begin{question} + Integral of $x+\sin(x)=$? + \RespBoxMath{x^2/2-cos(x)}{6}{0.001}{[1,2]}[indefCompare] + \end{question} +\end{category} +\begin{category}{Physics} + \begin{question} + The formula for \textit{kinetic energy} is + \Ans0 $ mv$ + \Ans1 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{impuls} of moving object is + \Ans1 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{total energy} of moving object from theory + of relativity is + \Ans0 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans1 $mc^2$ + \end{question} +\end{category} + +\end{document} diff --git a/macros/latex/contrib/jeopardy/example/game1.pdf b/macros/latex/contrib/jeopardy/example/game1.pdf Binary files differnew file mode 100644 index 0000000000..3b1a55702b --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1.pdf diff --git a/macros/latex/contrib/jeopardy/example/game1.tex b/macros/latex/contrib/jeopardy/example/game1.tex new file mode 100644 index 0000000000..4ac75fbf27 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1.tex @@ -0,0 +1,78 @@ +\pdfoutput=1 + +\documentclass{article} +\usepackage[pdftex,designi]{web} +\usepackage[pdftex]{exerquiz} +\usepackage[ImplMulti,indefIntegral]{dljslib} +\usepackage%[picture] +{jeopardy} +%\def\Goal{500} + + + +\begin{document} +\def\title{My Jeopardy} + +\SetGameHeight{100pt} + +\Celltoks{\textSize{20}} +% \GrandPoohbahtoks{\BG{0 1 1}\BC{1 1 0}\textColor{1 0 0 rg}} +\Scoretoks{\BG{0.8 0.8 0.8}} + + +\MakeGameBoard +\begin{category}{Prezidents} + \begin{question} + The surname of the prezident known for affair with Monica Lewinski. + \RespBoxTxt101{Clinton} + \end{question} + \begin{question} + The surname of the curent prezident of Russia (November 2006). + \RespBoxTxt101{Putin} + \end{question} + \begin{question} + The surname of the first prezident of Czech Republic (October 1918). + \RespBoxTxt101{Masaryk} + \end{question} +\end{category} +\begin{category}{Calculus} + \begin{question} + The main object of interest in Calculus is/are + \Ans0 money + \Ans0 women + \Ans1 functions + \Ans0 vectors + \Ans0 poor people + \end{question} + \begin{question} + Derivative of $x+\sin(x)=$? + \RespBoxMath{1+cos(x)}{6}{0.001}{[1,2]} + \end{question} + \begin{question} + Integral of $x+\sin(x)=$? + \RespBoxMath{x^2/2-cos(x)}{6}{0.001}{[1,2]}[indefCompare] + \end{question} +\end{category} +\begin{category}{Physics} + \begin{question} + The formula for \textit{kinetic energy} is + \Ans0 $ mv$ + \Ans1 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{impuls} of moving object is + \Ans1 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{total energy} of moving object from theory + of relativity is + \Ans0 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans1 $mc^2$ + \end{question} +\end{category} + +\end{document} diff --git a/macros/latex/contrib/jeopardy/example/game1a.pdf b/macros/latex/contrib/jeopardy/example/game1a.pdf Binary files differnew file mode 100644 index 0000000000..e975075b9b --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1a.pdf diff --git a/macros/latex/contrib/jeopardy/example/game1a.tex b/macros/latex/contrib/jeopardy/example/game1a.tex new file mode 100644 index 0000000000..2fa3ce92b3 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game1a.tex @@ -0,0 +1,72 @@ +%\pdfoutput=1 + +\documentclass{article} +\usepackage[pdftex,designi]{web} +\usepackage[pdftex]{exerquiz} + +\usepackage[ImplMulti,indefIntegral]{dljslib} +\usepackage[picture,finetune]{jeopardy} +\AditionalShift=4.5pt + +\begin{document} +\def\title{My Jeopardy} + +\SetGameWidth{0.6\linewidth} + +\MakeGameBoard + +\begin{category}{Prezidents} + \begin{question} + The surname of the prezident known for affair with Monica Lewinski. + \RespBoxTxt101{Clinton} + \end{question} + \begin{question} + The surname of the curent prezident of Russia (November 2006). + \RespBoxTxt101{Putin} + \end{question} + \begin{question} + The surname of the first prezident of Czech Republic (October 1918). + \RespBoxTxt101{Masaryk} + \end{question} +\end{category} +\begin{category}{Calculus} + \begin{question} + The main object of interest in Calculus is/are + \Ans0 money + \Ans0 women + \Ans1 functions + \Ans0 vectors + \Ans0 poor people + \end{question} + \begin{question} + Derivative of $x+\sin(x)=$? + \RespBoxMath{1+cos(x)}{6}{0.001}{[1,2]} + \end{question} + \begin{question} + Integral of $x+\sin(x)=$? + \RespBoxMath{x^2/2-cos(x)}{6}{0.001}{[1,2]}[indefCompare] + \end{question} +\end{category} +\begin{category}{Physics} + \begin{question} + The formula for \textit{kinetic energy} is + \Ans0 $ mv$ + \Ans1 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{impuls} of moving object is + \Ans1 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans0 $mc^2$ + \end{question} + \begin{question} + The formula for \textit{total energy} of moving object from theory + of relativity is + \Ans0 $ mv$ + \Ans0 $\frac 12 mv^2$ + \Ans1 $mc^2$ + \end{question} +\end{category} + +\end{document} diff --git a/macros/latex/contrib/jeopardy/example/game2.pdf b/macros/latex/contrib/jeopardy/example/game2.pdf Binary files differnew file mode 100644 index 0000000000..e735877dd7 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game2.pdf diff --git a/macros/latex/contrib/jeopardy/example/game2.tex b/macros/latex/contrib/jeopardy/example/game2.tex new file mode 100644 index 0000000000..c9589b5cb3 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game2.tex @@ -0,0 +1,288 @@ +\pdfoutput=1 + +\documentclass{article} + +\usepackage{color} + +\usepackage{amsmath} +\DeclareMathOperator{\arctg}{arctg} +\everymath{\displaystyle} + +\usepackage[pdftex,designi]{web} +\usepackage[noxcolor,pdftex]{exerquiz} +\usepackage[ImplMulti]{dljslib} + +\parindent 0pt +\def\correctColor{color.green} +\def\wrongColor{color.red} + +\usepackage[twoplayers]{jeopardy} +\pagestyle{empty} +\everyCategoryHead{\color{darkgreen}\tiny} + +\def\logoB{\rotatebox{90}{% + \vbox{\normalsize\hbox{\color{red}{Robert Ma\v{r}\'{i}k}} + \hbox{\color{green}Jeopardy game}}} + \vfill} + +\let\rmdefault\sfdefault +\hypersetup{pdfpagemode=Window, pdfnewwindow=true, pdfmenubar=true,% + pdftoolbar=true,colorlinks, pdfwindowui=false, + pdfpagemode=Window} + + +\begin{document} +%\CellHeight=24bp +\SetGameHeight{0.4\textheight} +\ScoreCellHeight=0.5\CellHeight + +\everyRadioButton{%\BG{1 1 1} +\BC{1 1 0} \textColor{0 1 0 rg} +} + +\Playertoks{\BC{1 0 0}\textColor{0 1 0 rg}} + + +\MakeGameBoard + +\begin{category}{Precalculus} + +\begin{question} +$\ln \frac xy=$ +\Ans0 $\ln x+\ln y$ +\Ans1 $\ln x-\ln y$ +\Ans0 $x\ln y$ +\Ans0 $y\ln x$ +\Ans0 none of them +\end{question} + +\begin{question} +The function $y=x^2\cdot \sin x$ is +\Ans1 odd +\Ans0 even +\Ans0 neither odd nor even +\end{question} + +\begin{question} +$\arctan 1=$ +\Ans0 $\infty$ +\Ans0 $\frac \pi3$ +\Ans1 $\frac \pi4$ +\Ans0 $\frac \pi6$ +\Ans0 none of them +\end{question} + +\begin{question} +The equivalence "$a<b$ if and only if $f(a)<f(b)$" is the property of +\Ans0 even functions +\Ans0 one-to-one functions +\Ans0 continuous functions +\Ans1 increasing functions +\Ans0 none of them +\end{question} + +\end{category} + + +\begin{category}{Functions} + +\begin{question} +How many points of inflection is on the graph of the function $y=\sin x$ in +the open interval $(0,2\pi)$ +\Ans0 none +\Ans1 one +\Ans0 two +\Ans0 three +\Ans0 none of them +\end{question} + +\begin{question} +Find points of discontinuity of the function $y=\frac {x-4}{(x-2)\ln x}$ +\Ans0 none +\Ans0 $0$ +\Ans0 $0$, $1$ +\Ans1 $0$, $1$, $2$ +\Ans0 $0$, $2$ +\Ans0 $0$, $1$, $4$ +\Ans0 $0$, $4$ +\Ans0 none of them +\end{question} + +\begin{question} +Let $f$ be a function and $f^{-1}$ be its inverse. Then $f^{-1}\bigl(f(x)\bigr)=$ +\Ans0 $0$ +\Ans0 $1$ +\Ans1 $x$ +\Ans0 $f(x)$ +\Ans0 $f^{-1}(x)$ +\Ans0 none of them +\end{question} + +\begin{question} +$\arcsin(\sin x)=x$ for every $x\in\mathbf{R}$ +\Ans0 Yes +\Ans1 No +\end{question} + +\end{category} + + +\begin{category}{Limits} + +\begin{question} +$\lim_{x\to-\infty} \arctg x=$ +\Ans0 $0$ +\Ans0 $\frac\pi2$ +\Ans1 $-\frac\pi2$ +\Ans0 $\infty$ +\Ans0 $-\infty$ +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to\infty}\sin x=$ +\Ans0 $1$ +\Ans0 $-1$ +\Ans1 does not exist +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to\infty}\frac{2x^3+x^2+4}{x^2-x+2}=$ +\Ans1 $\infty$ +\Ans0 $2$ +\Ans0 $0$ +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to 0^+}\frac{e^{1/x}(x-1)}{x}$ +\Ans0 $0$ +\Ans0 $1$ +\Ans0 $e$ +\Ans0 $\infty$ +\Ans0 $-1$ +\Ans0 $-e$ +\Ans1 $-\infty$ +\Ans0 none of them +\end{question} + +\end{category} + +\begin{category}{Derivative} + + +\begin{question} +$\left(\frac 1{\sqrt[3]x}\right)'=$ +\Ans0 $\frac 13 x^{-2/3}$ +\Ans0 $-\frac 13 x^{-2/3}$ +%\Ans0 $\frac 13 x^{1/3}$ +\Ans0 $-\frac 13 x^{1/3}$ +\Ans0 $\frac 13 x^{-4/3}$ +\Ans1 $-\frac 13 x^{-4/3}$ +\Ans0 none of them +\end{question} + + +\begin{question} +$(x-x\ln x)'=$ +\Ans0 $\ln x$ +\Ans1 $-\ln x$ +\Ans0 $1+\ln x$ +\Ans0 $1-\ln x$ +\Ans0 $0$ +\Ans0 $1-\frac 1x$ +\Ans0 none of them +\end{question} + +\begin{question} +$\left(x^2e^{x^2}\right)'$ +\Ans0 $2xe^{2x}$ +\Ans0 $2xe^{x^2}2x$ +\Ans0 $2xe^{x^2}+x^2e^{x^2}$ +\Ans1 $2xe^{x^2}+x^2e^{x^2}2x$ +\Ans0 $2xe^{x^2}2x+x^2e^{x^2}2x$ +\Ans0 none of them +\end{question} + +\begin{question} +The definition of the derivative of the function $f$ at the point $a$ is +\Ans0 $\lim_{h\to 0}\frac{f(x+h)+f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)}{h}$ +\Ans1 $\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x)-f(x+h)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x-h)-f(x)}{h}$ +\Ans0 none of them +\end{question} + +\end{category} + +\everyRespBoxMath{\BG{1 1 1}} +\begin{category}{Evaluation of derivatives} + \begin{question}$(x^2+1)'=$ + \RespBoxMath{2x}{3}{0.001}{[1,5]} + \end{question} + \begin{question}$(xe^x)'=$ + \RespBoxMath{(x+1)e^x}{3}{0.001}{[1,5]} + \end{question} + \begin{question}$\ln(\sin x)=$ + \RespBoxMath{cos(x)/sin(x)}{3}{0.001}{[1,2]} + \end{question} + \begin{question}$(xe^{-x})'=$ + \RespBoxMath{(1-x)e^{-x}}{3}{0.001}{[1,5]} + \end{question} +\end{category} + + + +\begin{category}{Theory} + +\begin{question} By theorem of Bolzano, the polynomial $y=x^3+2x+4$ has zero on +\Ans0 $(0,1)$ +\Ans0 $(1,2)$ +\Ans0 $(2,3)$ +\Ans0 $(-1,0)$ +\Ans1 $(-2,-1)$ +\Ans0 $(-3,-2)$ +\Ans0 none of them +\end{question} + + +\begin{question} +Let $a\in Im(f)$. Then the solution of the equation $f(x)=a$ exists. This +solution is unique if and only if +\Ans1 $f$ is one-to-one +\Ans0 $f$ is increasing +\Ans0 $f$ continuous +\Ans0 $f$ differentiable +\Ans0 none of them +\end{question} + + +\begin{question} +If the function has a derivative at the point $x=a$, then it is +\Ans0 increasing at $a$. +\Ans0 decreasing at $a$. +\Ans0 one-to-one at $a$. +\Ans1 continuous at $a$. +\Ans0 undefined at $a$. +\end{question} + +\begin{question} +If both $y(a)=y'(a)=y''(a)=0$, then the function +\Ans0 has local maximum at $a$. +\Ans0 has local minimum at $a$. +\Ans0 has point of inflection at $a$. +\Ans1 any of these possibilites may be true, we need more informations. +\end{question} + +\end{category} + + +\end{document} +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: + + diff --git a/macros/latex/contrib/jeopardy/example/game2a.pdf b/macros/latex/contrib/jeopardy/example/game2a.pdf Binary files differnew file mode 100644 index 0000000000..76a943c553 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game2a.pdf diff --git a/macros/latex/contrib/jeopardy/example/game2a.tex b/macros/latex/contrib/jeopardy/example/game2a.tex new file mode 100644 index 0000000000..7bdc9d5c79 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game2a.tex @@ -0,0 +1,289 @@ +\pdfoutput=1 + +\documentclass{article} + +\usepackage{color} + +\usepackage{amsmath} +\DeclareMathOperator{\arctg}{arctg} +\everymath{\displaystyle} + +\usepackage[pdftex,designi]{web} +\usepackage[noxcolor,pdftex]{exerquiz} +\usepackage[ImplMulti]{dljslib} + +\parindent 0pt +\def\correctColor{color.green} +\def\wrongColor{color.red} + +\usepackage[picture,finetune]{jeopardy} +\def\JeopardyPictureFile{joke.jpg} + +\def\ChampionMsg{Have a fun with math!} +\GrandPoohbahtoks{\textColor{1 1 0 rg}\textSize{0}} + +\everyCategoryHead{\color{darkgreen}\tiny} +\pagestyle{empty} + +\def\logoB{\rotatebox{90}{% + \vbox{\normalsize\hbox{\color{red}{Robert Ma\v{r}\'{i}k}} + \hbox{\color{green}Jeopardy game}}} + \vfill} + +\let\rmdefault\sfdefault +\hypersetup{pdfpagemode=Window, pdfnewwindow=true, pdfmenubar=true,% + pdftoolbar=true,colorlinks, pdfwindowui=false, + pdfpagemode=Window} + + +\AditionalShift=5pt +\begin{document} +%\CellHeight=24bp + +\Celltoks{\BG{1 1 0.8}\textSize{0}\BC{1 1 0.8}\W{0}} +\SetGameWidth{0.7\linewidth} +\everyPushButton{\S{I}\BC{}} + +\MakeGameBoard + +\begin{category}{Precalculus} + +\begin{question} +$\ln \frac xy=$ +\Ans0 $\ln x+\ln y$ +\Ans1 $\ln x-\ln y$ +\Ans0 $x\ln y$ +\Ans0 $y\ln x$ +\Ans0 none of them +\end{question} + +\begin{question} +The function $y=x^2\cdot \sin x$ is +\Ans1 odd +\Ans0 even +\Ans0 neither odd nor even +\end{question} + +\begin{question} +$\arctan 1=$ +\Ans0 $\infty$ +\Ans0 $\frac \pi3$ +\Ans1 $\frac \pi4$ +\Ans0 $\frac \pi6$ +\Ans0 none of them +\end{question} + +\begin{question} +The equivalence "$a<b$ if and only if $f(a)<f(b)$" is the property of +\Ans0 even functions +\Ans0 one-to-one functions +\Ans0 continuous functions +\Ans1 increasing functions +\Ans0 none of them +\end{question} + +\end{category} + + +\begin{category}{Functions} + +\begin{question} +How many points of inflection is on the graph of the function $y=\sin x$ in +the open interval $(0,2\pi)$ +\Ans0 none +\Ans1 one +\Ans0 two +\Ans0 three +\Ans0 none of them +\end{question} + +\begin{question} +Find points of discontinuity of the function $y=\frac {x-4}{(x-2)\ln x}$ +\Ans0 none +\Ans0 $0$ +\Ans0 $0$, $1$ +\Ans1 $0$, $1$, $2$ +\Ans0 $0$, $2$ +\Ans0 $0$, $1$, $4$ +\Ans0 $0$, $4$ +\Ans0 none of them +\end{question} + +\begin{question} +Let $f$ be a function and $f^{-1}$ be its inverse. Then $f^{-1}\bigl(f(x)\bigr)=$ +\Ans0 $0$ +\Ans0 $1$ +\Ans1 $x$ +\Ans0 $f(x)$ +\Ans0 $f^{-1}(x)$ +\Ans0 none of them +\end{question} + +\begin{question} +$\arcsin(\sin x)=x$ for every $x\in\mathbf{R}$ +\Ans0 Yes +\Ans1 No +\end{question} + +\end{category} + + +\begin{category}{Limits} + +\begin{question} +$\lim_{x\to-\infty} \arctg x=$ +\Ans0 $0$ +\Ans0 $\frac\pi2$ +\Ans1 $-\frac\pi2$ +\Ans0 $\infty$ +\Ans0 $-\infty$ +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to\infty}\sin x=$ +\Ans0 $1$ +\Ans0 $-1$ +\Ans1 does not exist +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to\infty}\frac{2x^3+x^2+4}{x^2-x+2}=$ +\Ans1 $\infty$ +\Ans0 $2$ +\Ans0 $0$ +\Ans0 none of them +\end{question} + +\begin{question} +$\lim_{x\to 0^+}\frac{e^{1/x}(x-1)}{x}$ +\Ans0 $0$ +\Ans0 $1$ +\Ans0 $e$ +\Ans0 $\infty$ +\Ans0 $-1$ +\Ans0 $-e$ +\Ans1 $-\infty$ +\Ans0 none of them +\end{question} + +\end{category} + +\begin{category}{Derivative} + + +\begin{question} +$\left(\frac 1{\sqrt[3]x}\right)'=$ +\Ans0 $\frac 13 x^{-2/3}$ +\Ans0 $-\frac 13 x^{-2/3}$ +%\Ans0 $\frac 13 x^{1/3}$ +\Ans0 $-\frac 13 x^{1/3}$ +\Ans0 $\frac 13 x^{-4/3}$ +\Ans1 $-\frac 13 x^{-4/3}$ +\Ans0 none of them +\end{question} + + +\begin{question} +$(x-x\ln x)'=$ +\Ans0 $\ln x$ +\Ans1 $-\ln x$ +\Ans0 $1+\ln x$ +\Ans0 $1-\ln x$ +\Ans0 $0$ +\Ans0 $1-\frac 1x$ +\Ans0 none of them +\end{question} + +\begin{question} +$\left(x^2e^{x^2}\right)'$ +\Ans0 $2xe^{2x}$ +\Ans0 $2xe^{x^2}2x$ +\Ans0 $2xe^{x^2}+x^2e^{x^2}$ +\Ans1 $2xe^{x^2}+x^2e^{x^2}2x$ +\Ans0 $2xe^{x^2}2x+x^2e^{x^2}2x$ +\Ans0 none of them +\end{question} + +\begin{question} +The definition of the derivative of the function $f$ at the point $a$ is +\Ans0 $\lim_{h\to 0}\frac{f(x+h)+f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)}{h}$ +\Ans1 $\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x)-f(x+h)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x-h)-f(x)}{h}$ +\Ans0 none of them +\end{question} + +\end{category} + +\everyRespBoxMath{\BG{1 1 1}} +\begin{category}{Evaluation of derivatives} + \begin{question}$(x^2+1)'=$ + \RespBoxMath{2x}{3}{0.001}{[1,5]} + \end{question} + \begin{question}$(xe^x)'=$ + \RespBoxMath{(x+1)e^x}{3}{0.001}{[1,5]} + \end{question} + \begin{question}$\ln(\sin x)=$ + \RespBoxMath{cos(x)/sin(x)}{3}{0.001}{[1,2]} + \end{question} + \begin{question}$(xe^{-x})'=$ + \RespBoxMath{(1-x)e^{-x}}{3}{0.001}{[1,5]} + \end{question} +\end{category} + + + +\begin{category}{Theory} + +\begin{question} By theorem of Bolzano, the polynomial $y=x^3+2x+4$ has zero on +\Ans0 $(0,1)$ +\Ans0 $(1,2)$ +\Ans0 $(2,3)$ +\Ans0 $(-1,0)$ +\Ans1 $(-2,-1)$ +\Ans0 $(-3,-2)$ +\Ans0 none of them +\end{question} + + +\begin{question} +Let $a\in Im(f)$. Then the solution of the equation $f(x)=a$ exists. This +solution is unique if and only if +\Ans1 $f$ is one-to-one +\Ans0 $f$ is increasing +\Ans0 $f$ continuous +\Ans0 $f$ differentiable +\Ans0 none of them +\end{question} + + +\begin{question} +If the function has a derivative at the point $x=a$, then it is +\Ans0 increasing at $a$. +\Ans0 decreasing at $a$. +\Ans0 one-to-one at $a$. +\Ans1 continuous at $a$. +\Ans0 undefined at $a$. +\end{question} + +\begin{question} +If both $y(a)=y'(a)=y''(a)=0$, then the function +\Ans0 has local maximum at $a$. +\Ans0 has local minimum at $a$. +\Ans0 has point of inflection at $a$. +\Ans1 any of these possibilites may be true, we need more informations. +\end{question} + +\end{category} + + +\end{document} +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: + + diff --git a/macros/latex/contrib/jeopardy/example/game3-CZ.pdf b/macros/latex/contrib/jeopardy/example/game3-CZ.pdf Binary files differnew file mode 100644 index 0000000000..4b9e4d50d8 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game3-CZ.pdf diff --git a/macros/latex/contrib/jeopardy/example/game3-CZ.tex b/macros/latex/contrib/jeopardy/example/game3-CZ.tex new file mode 100644 index 0000000000..c84c11aa88 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game3-CZ.tex @@ -0,0 +1,423 @@ +\pdfoutput=1 + +\documentclass{article} + +%\usepackage[czech]{babel} +\usepackage[IL2]{fontenc} +\usepackage{color} + +\usepackage{amsmath} +\DeclareMathOperator{\arctg}{arctg} +\everymath{\displaystyle} + +\usepackage[pdftex,designi]{web} +\usepackage[noxcolor,pdftex]{exerquiz} +\usepackage[ImplMulti]{dljslib} + + + +% \usepackage{keyval} +% \usepackage{mdwlist} +% \usepackage{amsmath} +% \def\R{\mathbb{R}} + \def\dx{\,\text{d}x} + \def\dt{\,\text{d}t} +% \usepackage{multicol} + +\parindent 0pt + +\let\rmdefault\sfdefault +\hypersetup{pdfpagemode=Window, pdfnewwindow=true, pdfmenubar=true,% + pdftoolbar=true,colorlinks, pdfwindowui=false, + pdfpagemode=Window} + + +\usepackage[czech,twoplayers,%bgpicture, +finetune +]{jeopardy} + +\everyRadioButton{%\BG{1 1 1} +\BC{1 1 0} \textColor{0 1 0 rg} +} + +\Playertoks{\BC{1 0 0}\textColor{0 1 0 rg}} + +\pagestyle{empty} +\let\phi\varphi +\def\title{Matematika I} +\pagecolor{black} +\color{white} +\def\correctColor{color.green} +\def\wrongColor{color.red} + +\AditionalShift=5pt +\Celltoks{\BC{}} + + +\begin{document} + +\SetGameWidth{0.80\linewidth} + +\def\AfterGameBoard{\global\ScoreCellHeight=20pt} + +\MakeGameBoard + +\message{\the\ScoreCellHeight ------} + +\begin{category}{Limita a spojitost} + +\begin{question} +Spojitost je definována pomocí +\Ans0 grafu +\Ans1 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + + +\begin{question} +Funkční hodnota funkce $f(x)$ v bodě $a$ (tj. hodnota $f(a)$) má na limitu +$\lim_{x\to a}f(x)$ vliv: +\Ans1 žádný +\Ans0 jednoznačně ji určuje +\Ans0 zhruba padesátiprocentní +\Ans0 jiná odpověď +\end{question} + + +\begin{question} + Platí-li $\lim_{x\to\infty}f(x)=2$, potom +\Ans0 funkce $f(x)$ roste v okolí čísla $2$ nade všechny meze +\Ans1 funkce $f(x)$ má v $\infty$ vodorovnou asymptotu $y=2$ +\Ans0 funkce $f(x)$ není definovaná pro $x>2$ +\Ans0 funkce $f(x)$ má v bodě $x=2$ svislou asymptotu +\end{question} + +\begin{question} + Platí-li $\lim_{x\to2}f(x)=\infty$, potom +\Ans0 funkce $f(x)$ má v $\infty$ vodorovnou asymptotu $y=2$ +\Ans0 funkce $f(x)$ není definovaná pro $x>2$ +\Ans1 funkce $f(x)$ má v bodě $x=2$ svislou asymptotu +\end{question} + +\begin{question} +Nechť funkce $f$ je v spojitá v bodě $a$. Potom funkce $f$ v bodě $a$ +\Ans0 může i nemusí mít limitu +\Ans0 nemá limitu +\Ans0 má limitu, ta může být vlastní i nevlastní +\Ans1 má vlastní limitu +\Ans0 má nevlastní limitu +\end{question} + +\end{category} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Derivace} + +\begin{question} +Derivace je definována pomocí +\Ans0 grafu +\Ans1 limity +\Ans0 spojitosti +\Ans0 integrálu +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ kladnou první derivaci, potom tato funkce v bodě +$a$: +\Ans1 roste +\Ans0 klesá +\Ans0 nabývá lokálního extrému +\Ans0 je konvexní +\Ans0 je konkávní +\Ans0 jiná odpověď +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ zápornou druhou derivaci, potom tato funkce v bodě +$a$: +\Ans0 roste +\Ans0 klesá +\Ans0 nabývá lokálního extrému +\Ans0 je konvexní +\Ans1 je konkávní +\Ans0 jiná odpověď +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ nulovou první derivaci, potom funkce $f$ v bodě +$a$ má: +\Ans0 lokální extrém +\Ans0 inflexní bod +\Ans0 lokální extrém a inflexní bod +\Ans1 lokální extrém nebo inflexní bod +\Ans0 ani lokální extrém ani inflexní bod +\Ans0 jiná odpověď +\end{question} + +\begin{question} + Derivace funkce $f(x)$ v bodě $a$ je definována jako limita +\Ans0 $\lim_{h\to 0}\frac{f(x+h)+f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)}{h}$ +\Ans1 $\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x)-f(x+h)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x-h)-f(x)}{h}$ +\Ans0 jinak +\end{question} + +\end{category} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Vektory} + + +\begin{question} +Lineární závislost a nezávislost je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans1 lineární kombinace vektorů +\end{question} + +\begin{question} +Sčítání vektorů +\Ans0 není komutativní ani asociativní +\Ans0 je komutativní, není asociativní +\Ans0 není komutativní, je asociativní +\Ans1 je komutativní i asociativní +\end{question} + +\begin{question} + Vektory $(1,2,3)$, $(1, 0, 1)$ a $(1, 2, 1)$ jsou lineárně nezávislé, + protože +\Ans0 žádný z nich není nulovým vektorem +\Ans0 žádný z nich není násobkem druhého +\Ans1 matice$ +\begin{pmatrix} + 1&2&3\\1&0&1\\1&2&1 +\end{pmatrix}$ +má hodnost tři +\Ans0 matice$ +\begin{pmatrix} + 1&2&3\\1&0&1\\1&2&1 +\end{pmatrix}$ +má hodnost menší než tři +\end{question} + + + +\begin{question} + Vektory $u_1$, $u_2$, \dots, $u_k$ jsou lineárně nezávislé právě tehdy když + \Ans0 Každá jejich lineární kombinace je různá od nulového vektoru. + \Ans1 Každá jejich netriviální lineární kombinace je různá od nulového vektoru. + \Ans0 Aspoň jedna jejich lineární kombinace je různá od nulového vektoru. + \Ans0 Aspoň jedna jejich netriviální lineární kombinace je různá od nulového vektoru. + \Ans0 Každá jejich lineární kombinace je rovna nulovému vektoru. + \Ans0 Každá jejich netriviální lineární kombinace je rovna nulovému vektoru. + \Ans0 Aspoň jedna jejich lineární kombinace je rovna nulovému vektoru. + \Ans0 Aspoň jedna jejich netriviální lineární kombinace je rovna nulovému vektoru. +\end{question} + + +\begin{question} + Vektory $u_1$, $u_2$, \dots, $u_k$ jsou lineárně závislé právě tehdy když +\Ans0 Každá jejich lineární kombinace je různá od nulového vektoru. +\Ans0 Každá jejich netriviální lineární kombinace je různá od nulového vektoru. +\Ans0 Aspoň jedna jejich lineární kombinace je různá od nulového vektoru. +\Ans0 Aspoň jedna jejich netriviální lineární kombinace je různá od nulového vektoru. +\Ans0 Každá jejich lineární kombinace je rovna nulovému vektoru. +\Ans0 Každá jejich netriviální lineární kombinace je rovna nulovému vektoru. +\Ans0 Aspoň jedna jejich lineární kombinace je rovna nulovému vektoru. +\Ans1 Aspoň jedna jejich netriviální lineární kombinace je rovna nulovému vektoru. +\end{question} + + + +\end{category} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Matice} + +\begin{question} +Hodnost matice je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans1 lineární závislosti a nezávislosti +\end{question} + +\begin{question} +Inverzní matice je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans1 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} + Násobení dvou matic +\Ans0 je definováno po složkách, je komutativní +\Ans0 je definováno po složkách, není komutativní +\Ans0 je definováno jako skalární součiny řádků první matice a sloupců druhé +matice, je komutativní +\Ans1 je definováno jako skalární součiny řádků první matice a sloupců druhé +matice, není komutativní +\Ans0 je definováno jako skalární součiny sloupců první matice a řádků +druhé matice, je komutativní +\Ans0 je definováno jako skalární součiny sloupců první matice a řádků +druhé matice, není komutativní +\end{question} + +\begin{question} +Jednotková matice je +\Ans0 matice složená ze samých jedniček +\Ans1 matice, která je neutrálním prvkem vzhledem k násobení +\Ans0 matice, jejíž determinant je roven jedné +\Ans0 matice, jejíž hodnost je rovna jedné +\end{question} + + +\begin{question} + Matice je ve schodovitém tvaru, jestliže (uvažujte matici která neobsahuje + řádky ze samých nul) +\Ans0 má pod hlavní diagonálou nuly +\Ans0 každý další řádek obsahuje více nul než řádek předchozí +\Ans1 každý další řádek začíná větším počtem nul než řádek předchozí +\end{question} + +\end{category} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Integrální počet} + +\begin{question} +Primitivní funkce je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans1 derivace +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} +Primitivní funkce je +\Ans0 určena jednoznačně +\Ans0 určena jednoznačně, až na multiplikativní konstantu +\Ans1 určena jednoznačně, až na aditivní konstantu +\Ans0 vždy sudá +\Ans0 vždy lichá +\end{question} + + +\begin{question} + Metoda pro integrování per-partés je odvozena +\Ans1 z pravidla pro derivaci součinu +\Ans0 z pravidla pro derivaci podílu +\Ans0 z pravidla pro derivaci složené funcke +\Ans0 přímo z definice integrálu +\end{question} + + +\begin{question} + Vzorec pro integraci per-partés zní: $\int uv'\dx=$ +\Ans0 $\int u'v\dx$ +\Ans0 $uv+\int u'v\dx$ +\Ans1 $uv-\int u'v\dx$ +\Ans0 $uv+u'v$ +\Ans0 $uv-u'v$ +\end{question} + +\begin{question} + Po substituci $x=\phi(t)$ do integrálu $\int f(x)\dx$ obdržíme + \Ans0 $\int f(t)\dt$ + \Ans0 $\int f(t)\phi(t)\dt$ + \Ans0 $\int f(t)\phi'(t)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\phi(t)\dt$ + \Ans1 $\int f\bigl(\phi(t)\bigr)\phi'(t)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\phi(t)\phi'(t)\dt$ +\end{question} + +\end{category} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Důležité věty} + +\begin{question}\textbf{Frobeniova věta:} Jsou-li hodnosti matice soustavy + a rozšířené + matice soustavy stejné, pak + \Ans0 soustava nemá řešení + \Ans0 soustava má právě jedno řešení + \Ans1 soustava má (jedno nebo nekonečně mnoho) řešení + \Ans0 soustava má nekonečně mnoho řešení +\end{question} + +\begin{question}Vyberte tvrzení, které platí. + \Ans1 Má-li funkce na intervalu $I$ derivaci, je na tomto intervalu + spojitá. Opačné tvrzení obecně neplatí. + \Ans0 Je-li funkce na intervalu $I$ spojitá, má v každém bodě tohoto + intervalu derivaci. Opačné tvrzení obecně neplatí. + \Ans0 Funkce je na intervalu $I$ spojitá právě tehdy, když má v každém bodě + tohoto intervalu derivaci. +\end{question} + +\begin{question} + Má-li funkce v bodě $a$ lokální extrém, potom zde má +\Ans0 nulovou derivaci +\Ans0 kladnou derivaci +\Ans0 zápornou derivaci +\Ans0 nedefinovanou derivaci +\Ans1 nulovou nebo nedefinovanou derivaci +\end{question} + + +\begin{question} + První Bolzanova věta zní: +\Ans0 Funkce, která na intervalu $[a,b]$ mění znaménko, je na tomto intervalu +spojitá. +\Ans0 Funkce, která na intervalu $[a,b]$ mění znaménko, má na tomto intervalu +nulový bod. +\Ans1 Funkce, která na intervalu $[a,b]$ mění znaménko a je na tomto intervalu +spojitá, má na tomto intervalu nulový bod. +\Ans0 Funkce, která má na intervalu $[a,b]$ nulový bod a je na tomto intervalu +spojitá, má na tomto intervalu znaménkovou změnu. +\end{question} + + +\begin{question} + První Weierstrassova věta zní: +\Ans0 Funkce definovaná na uzavřeném intervalu je na tomto intervalu spojitá. +\Ans1 Funkce spojitá na uzavřeném intervalu je na tomto intervalu ohraničená. +\Ans0 Funkce spojitá na uzavřeném intervalu je na tomto intervalu diferencovatelná. +\Ans0 Funkce diferencovatelná na uzavřeném intervalu je na tomto intervalu spojitá. +\Ans0 Funkce diferencovatelná na uzavřeném intervalu je na tomto intervalu +ohraničená. +\Ans0 Funkce spojitá na uzavřeném intervalu má na tomto intervalu znaménkovou +změnu. +\end{question} + +\end{category} + + +\end{document} +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: + diff --git a/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.pdf b/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.pdf Binary files differnew file mode 100644 index 0000000000..9eecdf70d3 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.pdf diff --git a/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.tex b/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.tex new file mode 100644 index 0000000000..8f9384b84e --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game3-oneplayer-CZ.tex @@ -0,0 +1,408 @@ +\pdfoutput=1 + +\documentclass{article} + +\usepackage[czech]{babel} +\usepackage[IL2]{fontenc} +\usepackage{color} + +\usepackage{amsmath} +\DeclareMathOperator{\arctg}{arctg} +\everymath{\displaystyle} + +\usepackage[pdftex,designi]{web} +\usepackage[noxcolor,pdftex]{exerquiz} +\usepackage[ImplMulti]{dljslib} +\pagestyle{empty} + +\def\dx{\,\text{d}x} +\def\dt{\,\text{d}t} + +\parindent 0pt + +\let\rmdefault\sfdefault +\hypersetup{pdfpagemode=Window, pdfnewwindow=true, pdfmenubar=true,% + pdftoolbar=true,colorlinks, pdfwindowui=false, + pdfpagemode=Window} + + +\usepackage[czech]{jeopardy} + +\let\phi\varphi +\def\title{Matematika I} +\pagecolor{black} +\color{white} +\def\correctColor{color.green} +\def\wrongColor{color.red} + +\AditionalShift=5pt +\Celltoks{\BC{}} + +\begin{document} + +\SetGameWidth{0.80\linewidth} + +\def\AfterGameBoard{\global\ScoreCellHeight=20pt} + +\MakeGameBoard + +\message{\the\ScoreCellHeight ------} + +\begin{category}{Limita a spojitost} + +\begin{question} +Spojitost je definována pomocí +\Ans0 grafu +\Ans1 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + + +\begin{question} +Funkční hodnota funkce $f(x)$ v bodě $a$ (tj. hodnota $f(a)$) má na limitu +$\lim_{x\to a}f(x)$ vliv: +\Ans1 žádný +\Ans0 jednoznačně ji určuje +\Ans0 zhruba padesátiprocentní +\Ans0 jiná odpověď +\end{question} + + +\begin{question} + Platí-li $\lim_{x\to\infty}f(x)=2$, potom +\Ans0 funkce $f(x)$ roste v okolí čísla $2$ nade všechny meze +\Ans1 funkce $f(x)$ má v $\infty$ vodorovnou asymptotu $y=2$ +\Ans0 funkce $f(x)$ není definovaná pro $x>2$ +\Ans0 funkce $f(x)$ má v bodě $x=2$ svislou asymptotu +\end{question} + +\begin{question} + Platí-li $\lim_{x\to2}f(x)=\infty$, potom +\Ans0 funkce $f(x)$ roste v okolí čísla $2$ nade všechny meze +\Ans0 funkce $f(x)$ má v $\infty$ vodorovnou asymptotu $y=2$ +\Ans0 funkce $f(x)$ není definovaná pro $x>2$ +\Ans1 funkce $f(x)$ má v bodě $x=2$ svislou asymptotu +\end{question} + +\begin{question} +Nechť funkce $f$ je v spojitá v bodě $a$. Potom funkce $f$ v bodě $a$ +\Ans0 může i nemusí mít limitu +\Ans0 nemá limitu +\Ans0 má limitu, ta může být vlastní i nevlastní +\Ans1 má vlastní limitu +\Ans0 má nevlastní limitu +\end{question} + +\end{category} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Derivace} + +\begin{question} +Derivace je definována pomocí +\Ans0 grafu +\Ans1 limity +\Ans0 spojitosti +\Ans0 integrálu +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ kladnou první derivaci, potom tato funkce v bodě +$a$: +\Ans1 roste +\Ans0 klesá +\Ans0 nabývá lokálního extrému +\Ans0 je konvexní +\Ans0 je konkávní +\Ans0 jiná odpověď +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ zápornou druhou derivaci, potom tato funkce v bodě +$a$: +\Ans0 roste +\Ans0 klesá +\Ans0 nabývá lokálního extrému +\Ans0 je konvexní +\Ans1 je konkávní +\Ans0 jiná odpověď +\end{question} + +\begin{question} +Má-li funkce $f$ v bodě $a$ nulovou první derivaci, potom funkce $f$ v bodě +$a$ má: +\Ans0 lokální extrém +\Ans0 inflexní bod +\Ans0 lokální extrém a inflexní bod +\Ans1 lokální extrém nebo inflexní bod +\Ans0 ani lokální extrém ani inflexní bod +\Ans0 jiná odpověď +\end{question} + +\begin{question} + Derivace funkce $f(x)$ v bodě $a$ je definována jako limita +\Ans0 $\lim_{h\to 0}\frac{f(x+h)+f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x+h)}{h}$ +\Ans1 $\lim_{h\to 0}\frac{f(x+h)-f(x)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x)-f(x+h)}{h}$ +\Ans0 $\lim_{h\to 0}\frac{f(x-h)-f(x)}{h}$ +\Ans0 jinak +\end{question} + +\end{category} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Vektory} + + +\begin{question} +Lineární závislost a nezávislost je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans1 lineární kombinace vektorů +\end{question} + +\begin{question} +Sčítání vektorů +\Ans0 není komutativní ani asociativní +\Ans0 je komutativní, není asociativní +\Ans0 není komutativní, je asociativní +\Ans1 je komutativní i asociativní +\end{question} + +\begin{question} + Vektory $(1,2,3)$, $(1, 0, 1)$ a $(1, 2, 1)$ jsou lineárně nezávislé, + protože +\Ans0 žádný z nich není nulovým vektorem +\Ans0 žádný z nich není násobkem druhého +\Ans1 matice$ +\begin{pmatrix} + 1&2&3\\1&0&1\\1&2&1 +\end{pmatrix}$ +má hodnost tři +\Ans0 matice$ +\begin{pmatrix} + 1&2&3\\1&0&1\\1&2&1 +\end{pmatrix}$ +má hodnost menší než tři +\end{question} + + + +\begin{question} + Vektory $u_1$, $u_2$, \dots, $u_k$ jsou lineárně nezávislé právě tehdy když + \Ans0 Každá jejich lineární kombinace je různá od nulového vektoru. + \Ans1 Každá jejich netriviální lineární kombinace je různá od nulového vektoru. + \Ans0 Aspoň jedna jejich lineární kombinace je různá od nulového vektoru. + \Ans0 Aspoň jedna jejich netriviální lineární kombinace je různá od nulového vektoru. + \Ans0 Každá jejich lineární kombinace je rovna nulovému vektoru. + \Ans0 Každá jejich netriviální lineární kombinace je rovna nulovému vektoru. + \Ans0 Aspoň jedna jejich lineární kombinace je rovna nulovému vektoru. + \Ans0 Aspoň jedna jejich netriviální lineární kombinace je rovna nulovému vektoru. +\end{question} + + +\begin{question} + Vektory $u_1$, $u_2$, \dots, $u_k$ jsou lineárně závislé právě tehdy když +\Ans0 Každá jejich lineární kombinace je různá od nulového vektoru. +\Ans0 Každá jejich netriviální lineární kombinace je různá od nulového vektoru. +\Ans0 Aspoň jedna jejich lineární kombinace je různá od nulového vektoru. +\Ans0 Aspoň jedna jejich netriviální lineární kombinace je různá od nulového vektoru. +\Ans0 Každá jejich lineární kombinace je rovna nulovému vektoru. +\Ans0 Každá jejich netriviální lineární kombinace je rovna nulovému vektoru. +\Ans0 Aspoň jedna jejich lineární kombinace je rovna nulovému vektoru. +\Ans1 Aspoň jedna jejich netriviální lineární kombinace je rovna nulovému vektoru. +\end{question} + + + +\end{category} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Matice} + +\begin{question} +Hodnost matice je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans0 maticového součinu +\Ans1 lineární závislosti a nezávislosti +\end{question} + +\begin{question} +Inverzní matice je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans0 derivace +\Ans0 integrálu +\Ans1 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} + Násobení dvou matic +\Ans0 je definováno po složkách, je komutativní +\Ans0 je definováno po složkách, není komutativní +\Ans0 je definováno jako skalární součiny řádků první matice a sloupců druhé +matice, je komutativní +\Ans1 je definováno jako skalární součiny řádků první matice a sloupců druhé +matice, není komutativní +\Ans0 je definováno jako skalární součiny sloupců první matice a řádků +druhé matice, je komutativní +\Ans0 je definováno jako skalární součiny sloupců první matice a řádků +druhé matice, není komutativní +\end{question} + +\begin{question} +Jednotková matice je +\Ans0 matice složená ze samých jedniček +\Ans1 matice, která je neutrálním prvkem vzhledem k násobení +\Ans0 matice, jejíž determinant je roven jedné +\Ans0 matice, jejíž hodnost je rovna jedné +\end{question} + + +\begin{question} + Matice je ve schodovitém tvaru, jestliže (uvažujte matici která neobsahuje + řádky ze samých nul) +\Ans0 má pod hlavní diagonálou nuly +\Ans0 každý další řádek obsahuje více nul než řádek předchozí +\Ans1 každý další řádek začíná větším počtem nul než řádek předchozí +\end{question} + +\end{category} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Integrální počet} + +\begin{question} +Primitivní funkce je definována pomocí +\Ans0 grafu +\Ans0 limity +\Ans1 derivace +\Ans0 maticového součinu +\Ans0 lineární kombinace vektorů +\end{question} + +\begin{question} +Primitivní funkce je +\Ans0 určena jednoznačně +\Ans0 určena jednoznačně, až na multiplikativní konstantu +\Ans1 určena jednoznačně, až na aditivní konstantu +\Ans0 vždy sudá +\Ans0 vždy lichá +\end{question} + + +\begin{question} + Metoda pro integrování per-partés je odvozena +\Ans1 z pravidla pro derivaci součinu +\Ans0 z pravidla pro derivaci podílu +\Ans0 z pravidla pro derivaci složené funcke +\Ans0 přímo z definice integrálu +\end{question} + + +\begin{question} + Vzorec pro integraci per-partés zní: $\int uv'\dx=$ +\Ans0 $\int u'v\dx$ +\Ans0 $uv+\int u'v\dx$ +\Ans1 $uv-\int u'v\dx$ +\Ans0 $uv+u'v$ +\Ans0 $uv-u'v$ +\end{question} + +\begin{question} + Po substituci $x=\phi(t)$ do integrálu $\int f(x)\dx$ obdržíme + \Ans0 $\int f(t)\dt$ + \Ans0 $\int f(t)\phi(t)\dt$ + \Ans0 $\int f(t)\phi'(t)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\phi(t)\dt$ + \Ans1 $\int f\bigl(\phi(t)\bigr)\phi'(t)\dt$ + \Ans0 $\int f\bigl(\phi(t)\bigr)\phi(t)\phi'(t)\dt$ +\end{question} + +\end{category} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\begin{category}{Důležité věty} + +\begin{question}\textbf{Frobeniova věta:} Jsou-li hodnosti matice soustavy + a rozšířené + matice soustavy stejné, pak + \Ans0 soustava nemá řešení + \Ans0 soustava má právě jedno řešení + \Ans1 soustava má (jedno nebo nekonečně mnoho) řešení + \Ans0 soustava má nekonečně mnoho řešení +\end{question} + +\begin{question}Vyberte tvrzení, které platí. + \Ans1 Má-li funkce na intervalu $I$ derivaci, je na tomto intervalu + spojitá. Opačné tvrzení obecně neplatí. + \Ans0 Je-li funkce na intervalu $I$ spojitá, má v každém bodě tohoto + intervalu derivaci. Opačné tvrzení obecně neplatí. + \Ans0 Funkce je na intervalu $I$ spojitá právě tehdy, když má v každém bodě + tohoto intervalu derivaci. +\end{question} + +\begin{question} + Má-li funkce v bodě $a$ lokální extrém, potom zde má +\Ans0 nulovou derivaci +\Ans0 kladnou derivaci +\Ans0 zápornou derivaci +\Ans0 nedefinovanou derivaci +\Ans1 nulovou nebo nedefinovanou derivaci +\end{question} + + +\begin{question} + První Bolzanova věta zní: +\Ans0 Funkce, která na intervalu $[a,b]$ mění znaménko, je na tomto intervalu +spojitá. +\Ans0 Funkce, která na intervalu $[a,b]$ mění znaménko, má na tomto intervalu +nulový bod. +\Ans1 Funkce, která na intervalu $[a,b]$ mění znaménko a je na tomto intervalu +spojitá, má na tomto intervalu nulový bod. +\Ans0 Funkce, která má na intervalu $[a,b]$ nulový bod a je na tomto intervalu +spojitá, má na tomto intervalu znaménkovou změnu. +\end{question} + + +\begin{question} + První Weierstrassova věta zní: +\Ans0 Funkce definovaná na uzavřeném intervalu je na tomto intervalu spojitá. +\Ans1 Funkce spojitá na uzavřeném intervalu je na tomto intervalu ohraničená. +\Ans0 Funkce spojitá na uzavřeném intervalu je na tomto intervalu diferencovatelná. +\Ans0 Funkce diferencovatelná na uzavřeném intervalu je na tomto intervalu spojitá. +\Ans0 Funkce diferencovatelná na uzavřeném intervalu je na tomto intervalu +ohraničená. +\Ans0 Funkce spojitá na uzavřeném intervalu má na tomto intervalu znaménkovou +změnu. +\end{question} + +\end{category} + + +\end{document} +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: + diff --git a/macros/latex/contrib/jeopardy/example/game4.pdf b/macros/latex/contrib/jeopardy/example/game4.pdf Binary files differnew file mode 100644 index 0000000000..66133ccc6a --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game4.pdf diff --git a/macros/latex/contrib/jeopardy/example/game4.tex b/macros/latex/contrib/jeopardy/example/game4.tex new file mode 100644 index 0000000000..dc2e110706 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/game4.tex @@ -0,0 +1,169 @@ +\documentclass{article} +\usepackage{amsmath} +\usepackage[pdftex,designi]{web} +\usepackage[pdftex]{exerquiz} +\usepackage[pdftex]{eforms} +\usepackage[ImplMulti]{dljslib} + +\everymath{\displaystyle} +\parindent 0pt +\definecolor{pozadi}{rgb}{1,1,0.9} +\pagecolor{pozadi} + +\usepackage[picture,finetune]{jeopardy} +\def\JeopardyPictureFile{aleq.jpg} +\def\ChampionMsg{Niels Abel and Evariste Galois} + +\def\logoB{\rotatebox{90}{% + \vbox{\normalsize\hbox{\color{red}{Robert Ma\v{r}\'{i}k}} + \hbox{\color{green}Jeopardy game}}} + \vfill} + +\let\rmdefault\sfdefault +\hypersetup{pdfpagemode=Window, pdfnewwindow=true, pdfmenubar=true,% + pdftoolbar=true,colorlinks, pdfwindowui=false, + pdfpagemode=Window} +\pagestyle{empty} + +\begin{insDLJS}[dljslibRMbbbb]{dljsliRMbbbb}{RMbbbb} + + +function ProcRespSetFormulaEmpty(flag,CorrAns,n,epsilon,a,indepVar,oComp) +{ + ok2Continue = true; + if (!ProcessIt) return null; + var fieldname = event.target.name; + var UserAns = event.value; + this.getField(fieldname).strokeColor = \eqDefaultColor; + UserAns = stripWhiteSpace(UserAns); + if (!ok2Continue) return null; + if (UserAns == "empty") { + success = (CorrAns == UserAns); + return notifyField(success, flag, fieldname); + } + if (CorrAns == "empty") { + success = (CorrAns == UserAns); + return notifyField(success, flag, fieldname); + } + var aUserAns = UserAns.split(","); + var aCorrAns = CorrAns.split(","); + var numCorrect = 0; + var match = 0; + if ( aUserAns.length != aCorrAns.length ) return notifyField(false, flag, fieldname); + for ( var i=0; i< aCorrAns.length; i++) { + match = 0; + for ( var j=i; j< aUserAns.length; j++) { + var retn = _ProcResp(flag,aCorrAns[i],aUserAns[j],n,epsilon,a,indepVar,oComp); + if ( retn == null ) return syntaxError(), null; + if (retn==1) { + var temp=aUserAns[j]; + aUserAns[j]=aUserAns[i]; + aUserAns[i]=temp; + match = match + 1; + } + } + numCorrect += (match) ? 1 : 0; + } + var success = (numCorrect == aCorrAns.length) ? true : false; + if ( success == null ) return syntaxError(), null; + return notifyField(success, flag, fieldname); +} + +\end{insDLJS} + + +\def\quest#1#2{ + \begin{question} + Solve the equation in the set of \textit{real} numbers. + \begin{equation*} + #1=0 + \end{equation*} + \bigskip + \begin{itemize} + \item Write the solution into the field. + \item If there is no solution, write the word \textit{empty}. + \end{itemize} + \bigskip + $x={}$\RespBoxMath{#2}{10}{1.0E-2}{0}{1}*{ProcRespSetFormulaEmpty} + \end{question} +} + +\title{Algebraic equations} + +%\def\title{Algebraic equations} + +\author{Robert Ma\v r\'\i k} + +\begin{document} + +\maketitle +You will solve algebraic equations. Write the solutions as comma +separated list, In the case of repeted solution write each solution +only \textbf{once}! + +\SetGameWidth{0.5\linewidth} +\Celltoks{\BC{}\BG{1 1 1}} +\AditionalShift=4.6pt + +\newpage +\MakeGameBoard +\begin{category}{Linear} + \quest{x+1}{-1} + \quest{2x-3}{3/2} + \quest{5x+15}{-3} + \quest{7x+13}{-13/7} + \quest{3x+1}{-1/3} + \quest{2x+7}{-7/2} + \quest{5x-6}{6/5} + \quest{7x-13}{13/7} +\end{category} +\begin{category}{Quadratic1} + \quest{x^2+x}{-1,0} + \quest{x^2-9}{3,-3} + \quest{x^2-7}{sqrt(7),-sqrt(7)} + \quest{x^2+4x}{-4,0} + \quest{x^2-x}{1,0} + \quest{x^2+9}{empty} + \quest{x^2}{0} + \quest{x^2-4x}{4,0} +\end{category} +\begin{category}{Quadratic2} + \quest{x^2+x+1}{empty} + \quest{x^2-6x+9}{3} + \quest{x^2-7x+6}{1,6} + \quest{x^2+4x+4}{-2} + \quest{x^2-3x+2}{1,2} + \quest{x^2+2x+9}{empty} + \quest{x^2-5x+6}{2,3} + \quest{x^2+4x-21}{-7,3} +\end{category} +\begin{category}{Higher order} + \quest{x^8-2}{2^(1/8),-2^(1/8)} + \quest{x^3-2x}{0,sqrt(2),-sqrt(2)} + \quest{x^4-1}{-1,1} + \quest{x^3-8}{2} + \quest{x^5-x^3}{1,-1,0} + \quest{x^6-x^5}{1,0} + \quest{x^3+2x^2+x}{0,-1} + \quest{x^3+4x^2+5x}{0} +\end{category} + +\newpage + +\newpage +\textbf{\'Evariste Galois} (1811--1832) was a French mathematician +born in Bourg-la-Reine. He died in a duel at the age of twenty. + +\medskip +\textbf{Niels Henrik Abel} (1802--1829), Norwegian mathematician, was +born in Nedstrand. In early April 1829 he obtained a position +in Berlin, but the letter bringing the offer did not reach Norway +until two days after Abel's death from tuberculosis. + +\medskip +Both mathematicians proved the impossibility of solving the $5$-degree +polynomial equation by radicals. + +\newpage + +\end{document} diff --git a/macros/latex/contrib/jeopardy/example/joke.jpg b/macros/latex/contrib/jeopardy/example/joke.jpg Binary files differnew file mode 100644 index 0000000000..b644b21a57 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/joke.jpg diff --git a/macros/latex/contrib/jeopardy/example/picture.jpg b/macros/latex/contrib/jeopardy/example/picture.jpg Binary files differnew file mode 100644 index 0000000000..93f8f95bb2 --- /dev/null +++ b/macros/latex/contrib/jeopardy/example/picture.jpg diff --git a/macros/latex/contrib/jeopardy/jeopardy.dtx b/macros/latex/contrib/jeopardy/jeopardy.dtx new file mode 100644 index 0000000000..a2101cce5d --- /dev/null +++ b/macros/latex/contrib/jeopardy/jeopardy.dtx @@ -0,0 +1,1009 @@ +% \iffalse meta-comment +% +% Copyright (C) 2004 by Robert Marik <marik@mendelu.cz> +% ------------------------------------------------------- +% +% This file may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.2 +% of this license or (at your option) any later version. +% The latest version of this license is in: +% +% http://www.latex-project.org/lppl.txt +% +% and version 1.2 or later is part of all distributions of LaTeX +% version 1999/12/01 or later. +% +% \fi +% +% \iffalse +%<*driver> +\ProvidesFile{jeopardy.dtx} +%</driver> +%<package>\NeedsTeXFormat{LaTeX2e} +%<package>\ProvidesPackage{jeopardy} +%<*package>\ProvidesPackage{jeopardy} +[2010/04/07 v1.1a .dtx jeopardy file] +%</package> +% +%<*driver> +\documentclass{ltxdoc} +\EnableCrossrefs +\CodelineIndex +\RecordChanges +\begin{document} + \DocInput{jeopardy.dtx} + \PrintChanges + \PrintIndex +\end{document} +%</driver> +% \fi +% +% \CheckSum{0} +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% +% \changes{v1.0}{2006/10/28}{Initial version} +% \changes{v1.01}{2006/10/30}{Minor changes to get compatibility with +% the last exerquiz.sty} +% \changes{v1.02}{2006/11/2}{Option picture +% added. Changed macro "title" into "JeopardyTitle".} +% \changes{v1.02a}{2006/11/3}{Minor update: Option bgpicture +% added.} +% \changes{v1.1}{2007/03/12}{Option twoplayers.} +% \changes{v1.1a}{2010/04/07}{Examples redesigned to work in TeXlive 2009.} +% +% \GetFileInfo{jeopardy.dtx} +% +% \DoNotIndex{\newcommand,\newenvironment,\vbox,\hbox, \', \@@end, +% \@@RespBoxMathActions, \@@RespBoxTxtActions, \@Panelhomepagename, +% \@Panelfullscreenname, \@jeopardyFineTunefalse, \@Panelclosename, +% \@Panelquitname, } +% +% +% \title{The \textsf{jeopardy} package\thanks{This document +% corresponds to \textsf{jeopardy}~\fileversion, dated +% \filedate.}} \author{Robert Ma\v r\'\i k \\ +% \texttt{marik@mendelu.cz}\thanks{Supported by the grant 18/2006 of +% the Fund for Developement of Czech Universities.}} +% +% \maketitle +% +% \section{Introduction} +% +% Jeopardy like game -- redesigned the \verb|jj_game.cls| by D. P. +% Story. The package requires to load \verb|exerquiz| and +% \verb|dljslib| packages from AcroTeX bundle. The current only +% supported way to produce pdf file is \verb|pdftex|. The main +% properties include +% \begin{itemize} +% \item In contrast to \verb|jj_game.cls|, the \verb|oQuestion| +% environment is used to allow fill-in questions. +% \item The \verb|proofing| option is introduced. Use this option to +% typeset your answers into the document. To check the answers for +% \verb|\RespBoxMath| and |\RespBoxTxt| commands remember to use +% transparent background for these text fields or use the browser +% which does not show these fields, like \verb|xpdf|. +% \item Option |twoplayers| builds game for two players. +% \item Option |bgpicture| is used to place the picture below the +% buttons (|graphicx| package is used). The name of the picture is +% stored in the |\JeopardyPictureFile| command. Default value is +% |picture.jpg|. You can change it by using command like +% |\def\JeopardyPictureFile{blabla.jpg}|. If you use this option, +% you may also consider the (rather tricky) option |finetune|. This +% option is described with the corresponding code at the end of this +% file. The |bgpicture| option is automaticaly turned on when +% |picture| option is active. +% \item The option |picture| is introduced for another version of the +% game. The user gets no score but uncovers parts of a picture +% hidden by buttons and (after wrong answer) non-transparent fields. +% It can be used in the class and students can guess what is on the +% picture. The option adds the "Solution" button below the +% gameboard. If the user clicks this button, all buttons from not +% yet answered questions and fields from wrong answered questions +% are hidden and the picture is fully visible. After the second +% click on this button, a |\ChampionMsg| is shown. This can be used +% for example to store the name of a person on the picture. +% \item The user is not allowed to browse pages of the game without +% clicking in gameboard. We use the (not portable) +% \verb|\pdfpageattr| command to achieve this behavior. This can be +% turned off by \verb|allowpeeking| option. +% \item The \verb|evalonblur| option may be used. This concerns +% filling forms for |\RespBoxTxt| and |\RespBoxMath| questions and +% the following problem with switching keyboard layout: When filling +% the text field, if user switches the keyboard +% layout\footnote{necessary, for example, to write powers on Czech +% keyboard} using keyboard shortcut on Linux, the (not yet +% finished and hence incorrect) answer is evaluated and marked as +% wrong. Known workarounds: +% \begin{itemize} +% \item The user should erase the contents of the field completely, +% switch the keyboard, click into the field and type his/her +% answer. +% \item The user should change keyboard using mouse and Gnome applet. +% \item The author can compile the file with \verb|evalonblur| +% option. The answer is evaluated after \verb|shift+click|-ing +% outside the field. +% \end{itemize} +% \end{itemize} +% This package has been tested on Texlive2005+Linux (pdfeTeXk, Version +% 3.141592-1.30.4-2.2 (Web2C 7.5.5)), with \verb|exerquiz| 2006/18/06 +% v6.05e. +% +% \section{Usage} +% +% To instal the style run |latex jeopardy.ins| from the directory with +% |jeopardy.dtx|. You get files |jeopardy.sty| and |jeopardy.cfg|. +% Copy both files where \LaTeX{} finds them and include your +% customizations into |jeopardy.cfg|. +% +% For sample file look at the files \verb|game*.tex|. The number of +% questions and categories is written into \verb|aux| file and stored +% in macros \verb|\NumberOfQuestions| and \verb|\NumberOfCategories|. +% From this reason, the file has to be two times \verb|pdflatex|-ed to +% build the game. The |aux| file contains also definitions for the +% category names. These names are not used when |picture| option is +% active. +% +% \DescribeMacro{\MakeGameBoard} Macro |\MakeGameBoard| typesets the +% game board. This should be at the begin of the file and followed by +% \verb|category| environments. The dimensions of cells are +% \verb|\CellWidth| and \verb|\CellHeight|. The user can set these +% dimensions after \verb|\begin{document}| or with the |\SetGameWidth| +% and |\SetGameHeight| commands. Write e.g. |\SetGameHeight{10cm}|. +% The fields are created via \verb|\pushButton| and +% \verb|\textField| commands and the user may change the default +% behavior using command available in the package \verb|eforms.sty|. +% The colors for wrong and right messages are set in \verb|exerquiz| +% package and stored in \verb|\correctColor| and \verb|\wrongColor| +% macros. The tokens registers |\GrandPoohbahtoks|, |\Celltoks| and +% |\Scoretoks| are used to build the GrandPoohbah field (see below), +% cell fields and score field. You can set it by e.g. +% |\GrandPoohbahtoks{\Q{0}\textColor{1 0 0 rg}}|. All these +% registers are empty by default. The exception is if the |picture| +% option is used, the |\Celltoks| is set to |\BG{0 0 0}|. If you +% change it, remember to use non-transparent background for cells! +% +% \DescribeMacro{\AfterGameBoard} Macro |\AfterGameBoard| is +% execuetd between gameboard and score field. +% +% \DescribeMacro{\everyCategoryHead} Tokens register +% |\everyCategoryHead| is used at the begin of every category head. +% You can set it by something like +% |\everyCategoryHead{\textrm\footnotesize}| +% +% \DescribeMacro{\JeopardyTitle} The |\JeopardyTitle| macro contains +% the title of the game. The title is the hyperlink anchor used to +% return from questions to the gameboard. You can set it by e.g. +% |\def\JeopardyTitle{The title of the game}|. +% +% \DescribeEnv{category} The |category| environment has one +% parameter -- the name of the category. It encloses \verb|question| +% environments. The category name is not used if the |picture| +% option is active. In this case the name is replaced by the capital +% letter A, B, C, \dots. In this case you (or your students) can +% refer to the fields like on chessboard. +% +% \DescribeEnv{question} The |question| environment contains a +% question and answers for multiple choice questions. The answers are +% introduced by \verb|\Ans0| (wrong answers) or \verb|\Ans1| (correct +% answers). The environment includes an \verb|oQuestion| environment +% and hence it may contain \verb|\RespBoxMath| or |\RespBoxTxt| +% command. +% +% \DescribeMacro{\Goal} If the user finishes the game with at least +% \verb|\Goal| points, a hidden banner (GrandPoohbah field) with +% message stored in \verb|\ChampionMsg| command is shown. The default +% initial value +% \verb|45*(1+numQuestions)*numQuestions*numCategories*\JeopardyScaleFactor| +% means 90 percent of the maximal point score. The banner has height +% \verb|\GrandPoohbahHeight|. This macro is not used if the option +% |picture| is active. In this case the |\ChampionMsg| should contain +% the name of the picture (for example the name of the person on +% photograph) and it can be shown by doubleclicking "Solution" +% button at the bottom. +% +% \DescribeMacro{\SetGameWidth} Macro |\SetGameWidth| sets the +% |\GameWidth| register with the width of the game desk. It evaluates +% the width of cells as quotient of the parameter of the macro and the +% number of categories. Macro |\SetGameHeight| works in a similar way +% if the option |picture| is not active. If the option |picture| is +% active, the height of the game is evaluated from the dimensions of +% the picture. The width of the picture is scaled into |\GameWidth| and +% the height is established from the height of the scaled picture. +% +% \StopEventually{} +% +% \section{Implementation} +% +% Check that we use |pdflatex| and both \verb|exerquiz| and +% \verb|dljslib| packages are loaded. +% \begin{macrocode} +%<*package> + +\ifx\shortquiz\undefined +\PackageWarning{Jeopardy}{!!!!!!!!!!!!! Load exerquiz package !!!!!!!!!!!} +\def\finito{\@@end} +\expandafter\finito\fi + +\ifx\dljsRegister\undefined +\PackageWarning{Jeopardy}{!!!!!!!!!!!!! Load dljslib package !!!!!!!!!!!} +\def\finito{\@@end} +\expandafter\finito\fi + +\if\eq@drivernum1%%% pdftex + \typeout{*** using pdftex option ***} + \def\JeopardyNoPeekCommand{ + \edef\ThisPage{/AA<</O<</S/JavaScript/JS(kontrola( + \the\QuestCount,\the\CatCount);)>> >>} + \global\pdfpageattr=\expandafter{\ThisPage}% + } +\else + \def\JeopardyNoPeekCommand{} + \typeout{!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!} + \typeout{!!!!!!!! The package has been tested with pdflatex only.} + \typeout{!!!!!!!! Use pdflatex drivers in eforms.sty and exerquiz.sty.} + \typeout{!!!!!!!! On your own risk you can use other drivers + with *allowpeeking* option.} + \PackageWarning{Jeopardy}{No pdftex drivers for eforms and exerquiz} +\fi + +\RequirePackage{multido} + +\DeclareOption{czech}{ +\def\formessage{za} +\def\Scoremessage{Body} +\def\fairmsg{Nesidit! Odpovidate na jinou otazku!} +\def\who@answers@msg#1{Odpovida hrac #1} +\def\RightWrongMessages{ +aCM = new Array\ +( "Spravne! Jen tak dal!", + "Vyborne! Gratuluji!", + "Dobre! Pokracujte ve spravne nacate praci!", + "Ano, ano, ano, ano!", + "Spravne! Zkuste i tezsi otazky", + "Spravna odpoved!", + "Presne tak! Ziskavate dalsi body" +); +aEM = new Array\ +( "To neni spravne! Zkuste jinou otazku.", + "Chyba. Nehadejte!", + "Prosim! Prosim! Premyslejte nez odpovite!", + "Dalsi chyba! Hadanim se daleko nedostanete!", + "Ale ne! Kdepak! Body dolu.", + "Ne, zkuste jinou otazku.", + "Zase spatne! Bohuzel, vase konto se opet snizuje!" +);} +\def\NotAllowedMesssage{"Nesmite menit odpovedi!"} +\def\RightMessage{Spravne} +\def\WrongMessage{Spatne} +\def\JeopardyTitle{Tituln\'\i{} strana} +\def\ChampionMsg{Bravo! Mistr nad mistry!} +} + +\def\formessage{for} +\def\Scoremessage{Score} +\def\NotAllowedMesssage{"Changing your answer is not allowed!"} +\def\RightMessage{Right} +\def\WrongMessage{Wrong} +\def\fairmsg{Play Fair! Answer the question you have clicked!} +\def\who@answers@msg#1{Player #1} +\def\RightWrongMessages{ +aCM = new Array +( "That's Right! Way to go, Kiddo!", + "Wonderfully Done! Congrats!", + "Very Good! Keep up the good work!", + "Good, good, good, good!", + "Gee, you're smart! Try a harder one!", + "You're pretty sharp! Continuez, s'il vous pla\string\356t!", + "You're the tops! But wait...try another." +); +aEM = new Array +( "That's wrong! Sorry. Try Again.", + "Error again. Don't guess, I'm watching!", + "Please! Please! Work it out first!", + "An error has insinuated itself into your calculations. Recalibrate your thinking!", + "Bah! Humbug! You're haunted by Errors!", + "Try again. This time with order and method.", + "Wrong again! Use your little gray cells!" +); +} +\def\JeopardyTitle{Jeopardy Game} +\def\ChampionMsg{You are a Champion!} + +\newif\ifJeopardyNoPeeking +\JeopardyNoPeekingtrue +\DeclareOption{allowpeeking}{\JeopardyNoPeekingfalse} + +\newif\ifEvalOnBlur +\EvalOnBlurfalse +\DeclareOption{evalonblur}{\EvalOnBlurtrue} + +\newif\ifdouble \doublefalse +\def\JeopardyScaleFactor{1} +\DeclareOption{double}{\doubletrue\def\JeopardyScaleFactor{2}} + +\newif\ifoneplayer \oneplayertrue +\DeclareOption{twoplayers}{\oneplayerfalse} + +\newif\if@jeopardyFineTune \@jeopardyFineTunefalse +\DeclareOption{finetune}{\@jeopardyFineTunetrue} + +\DeclareOption{proofing}{\eq@proofingtrue \JeopardyNoPeekingfalse} +\definecolor{webgreen}{rgb}{0,.5,0} + +\newif\if@jeopardyBgPicture +\@jeopardyBgPicturefalse +\DeclareOption{bgpicture}{\@jeopardyBgPicturetrue \everyPushButton{\BC{}}} + +\newif\if@jeopardyPicture +\@jeopardyPicturefalse +\def\Picture{0} +\DeclareOption{picture}{\def\Picture{1}\def\formessage#1.{}% + \@jeopardyPicturetrue + \@jeopardyBgPicturetrue + \Celltoks{\BG{0 0 0}} + \everyPushButton{\BC{}} +} + + +\newtoks\GrandPoohbahtoks +\newtoks\Scoretoks +\newtoks\Celltoks +\newtoks\Radiotoks +\newtoks\Playertoks + + +\ProcessOptions +% \end{macrocode} +% We load |graphicx| package for inserting bitmaps. +% \begin{macrocode} +\if@jeopardyBgPicture +\RequirePackage{graphicx} +\fi + +\sqTurnOffAlerts + +\newcount \CatCount +\newcount \QuestCount +\newcount \NumberOfCategories +\newcount \NumberOfQuestions +\newcount \QuestCountA \QuestCountA=-1 +\newcount \AnswerCount +\newcount \OQuestionCount +\newcount \temporarycount +\newcounter{tempcounter} +\everyRespBoxMath{\BG{1 1 1}} +\everyRespBoxTxt{\BG{1 1 1}} + +\newlength \GrandPoohbahHeight +\GrandPoohbahHeight = 10pt + +% \end{macrocode} +% Macros for setting game width and height. +% \begin{macrocode} +\newlength\GameWidth +\newlength\GameHeight +\newlength\CellWidth +\newlength\CellHeight +\newlength\ScoreCellHeight +\def\SetGameWidth#1{\GameWidth=#1\relax + \CellWidth=\GameWidth + \ifnum\NumberOfCategories=0 + \divide\CellWidth by 10 + \else + \divide\CellWidth by \NumberOfCategories + \fi +} +\def\SetGameHeight#1{\GameHeight=#1\relax + \CellHeight=\GameHeight + \ifnum\NumberOfCategories=0 + \divide\CellHeight by 10 + \else + \divide\CellHeight by \NumberOfQuestions + \fi + \ScoreCellHeight=\CellHeight +} +% \end{macrocode} +% We do some basic initializations for dimensions of gameboard. +% \begin{macrocode} +\AtBeginDocument{ +\SetGameWidth{0.8\linewidth} +\SetGameHeight{0.6\textheight} +} +% \end{macrocode} +% Macros to typeset the picture. The default name of the picture is +% |picture.jpg|. You can redefine the command |\insertJeopardyPicture| +% to replace the picture e.g. by a text written in \TeX. To do this, +% replace the |\includegraphics| command by something else, e.g. +% |minipage| environment. +% \begin{macrocode} +\newbox\JeopardyPictureBox +\def\JeopardyPictureFile{picture.jpg} +\def\insertJeopardyPicture{% + \setbox\JeopardyPictureBox=% + \hbox{\includegraphics[width=\GameWidth]{\JeopardyPictureFile}}% + \SetGameHeight{1.02\ht\JeopardyPictureBox}% + \dimen0=\CellHeight + \dimen1=0.5\dimen0 + \hbox to 0 pt{\vbox to 0 pt{\kern -\dimen1\box\JeopardyPictureBox\vss}\hss}% +} + +% \end{macrocode} +% We define |category| and |question| environments. We read the names of the +% categories from the |aux| file and store these names in macros. These +% names are not used when |picture| option is active. In this case we +% convert the number of category into capital letter. +% \begin{macrocode} +\if@jeopardyPicture + \def\CategoryNameDef#1#2{% + \setcounter{tempcounter}{#1}% + \expandafter\xdef\csname CategoryName#1\endcsname{% + \Alph{tempcounter}\strut}}% +\else + \def\CategoryNameDef#1#2{% + \expandafter\gdef\csname CategoryName#1\endcsname{#2}}% +\fi + +% \end{macrocode} +% The category environment simply increases the counter, writes the +% name into |aux| file and checks the number of questions in the last +% category environment. +% \begin{macrocode} +\newenvironment{category}[1]{% + \global\advance \CatCount by 1 + \global\QuestCount=0 + \immediate\write\@auxout{\string\CategoryNameDef{\the\CatCount}{#1}}% + } + {% + \ifnum \QuestCountA=-1 \global\QuestCountA=\QuestCount + \else + \ifnum\QuestCountA=\QuestCount + \else + \PackageWarning{Jeopardy} + {Bad number of questions in Category \the\CatCount.} + \fi + \fi + } +% \end{macrocode} +% |question| environment increases the counter, places the action to +% check that the page is opened from the gameboard, writes the title +% of the question and defines macro |\Ans| which typesets buttons with +% correct and incorrect answers. It also starts the |oQuestion| +% environment and hence the commands |\RespBoxMath| and |\RespBoxTxt| +% from |exerquiz.sty| can be used. At the end of the environment we +% close the |oQuestion| environment and start new page. +% \begin{macrocode} +\newenvironment{question}{% + \global\advance \QuestCount by 1\relax + \AnswerCount=0 + \ifJeopardyNoPeeking + \JeopardyNoPeekCommand + \fi + \begin{center}% + \hypertarget{\the\QuestCount\the\CatCount}% + {\csname CategoryName\the\CatCount\endcsname{} % + \formessage{} \the\QuestCount00.}% + \end{center}% +\def\Ans##1{\par +\ifnum\AnswerCount=0 \vskip\medskipamount\fi +\advance\AnswerCount by 1% +\setcounter{tempcounter}{\the\AnswerCount}% +\leavevmode\hbox to 0 pt{% +\hss +\ifeq@proofing \def\temp{##1}\if\temp1$\color{webgreen}\bullet$ \fi\fi +\pushButton[\CA{\alph{tempcounter}}% + \A{\JS{useranswer(##1,\the\QuestCount,\the\CatCount);}}]% + {{Answer\the\AnswerCount-\the\QuestCount-\the\CatCount}}% + {1.3em}{1.3em}% +\hskip1em}% +\leftskip2em}% +\begin{oQuestion}{Q\the\QuestCount\the\CatCount}% +}{\par\end{oQuestion}\newpage} + +% \end{macrocode} +% At the end of document we write the number of questions and +% categories into |aux| file. +% \begin{macrocode} +\AtEndDocument{ +\immediate\write\@auxout{\string\global\string\NumberOfCategories=\the\CatCount} +\immediate\write\@auxout{\string\global\string\NumberOfQuestions=\the\QuestCount} +} +% \end{macrocode} +% Here we redefine some internal macros of |exerquiz.sty|. +% \begin{macrocode} +\ifEvalOnBlur +\def\@@RespBoxMathActions +{% + \AA{ + \AAFormat{\eqFormatArg}% + \AAOnFocus{\JS{var retn = null;}}% + \AAOnBlur{\JS{retn = \processJSfunc(\rbArgs,\compareJSfunc); + if (event.shift){ + if (retn==true) {useranswer(1,\the\QuestCount,\the\CatCount); } + else {if (retn==false) {useranswer(0,\the\QuestCount,\the\CatCount);} + else {app.alert("Probably a syntax error somewhere.");}}} + else + {app.alert("Exit the field with Shift+Click."); + this.getField("obj.\oField.\thequestionno").setFocus(); + }} + } + } +} +\def\@@RespBoxTxtActions +{% + \AA{\AAOnBlur{\JS{retn = ProcRespTxt(\rbTxtAlt); + if (event.shift){ + if (retn==true) {useranswer(1,\the\QuestCount,\the\CatCount); } + else {if (retn==false) {useranswer(0,\the\QuestCount,\the\CatCount);} + else {app.alert("Probably a syntax error somewhere.");}}} + else + {app.alert("Exit the field with Shift+Click."); + this.getField("obj.\oField.\thequestionno").setFocus(); + }} }% + \AAOnFocus{\JS{var retn = null;}} + } +} +\def\jsRespBox[#1]#2{% + \def\compareJSfunc{#1}\def\processJSfunc{#2}% + \ifeq@proofing\makebox[0pt][l]{\space\math@correctAnswer}\fi + \eq@TextField % send to the driver-dependent macro + \ \pushButton{button}{10bp}{10bp}}% +\def\eq@@RespBoxTxt{% + \ifeq@proofing\makebox[0pt][l]{\space\txt@correctAnswer}\fi + \eq@TextField + \ \pushButton{button}{10bp}{10bp}}% +\else +\def\@@RespBoxMathActions +{% + \AA{\AAKeystroke{if(event.willCommit) { + retn = \processJSfunc(\rbArgs,\compareJSfunc); + if (retn==true) {useranswer(1,\the\QuestCount,\the\CatCount); } + else {if (retn==false) {useranswer(0,\the\QuestCount,\the\CatCount);} + else {app.alert("Probably a syntax error somewhere.");}}} + }% + \AAFormat{\eqFormatArg}% + \AAOnFocus{\JS{var retn = null;}}% + }% +}% +\def\@@RespBoxTxtActions +{% + \AA{\AAKeystroke{if(event.willCommit) { + retn = ProcRespTxt(\rbTxtAlt); + if (retn==true) {useranswer(1,\the\QuestCount,\the\CatCount); } + else {if (retn==false) {useranswer(0,\the\QuestCount,\the\CatCount);} + else {app.alert("Probably a syntax error somewhere.");}}} + }% + \AAOnFocus{\JS{var retn = null;}} + } +} +\fi %%% \ifEvalOnBlur +% \end{macrocode} +% Macro for typesetting the page with title (hyperref anchor), hidden +% GrandPoohbah field and gameboard. +% \begin{macrocode} +\newtoks\everyCategoryHead +\everyCategoryHead{}% +\def\MakeGameBoard{% + \begin{center}% + \hypertarget{GameBoard}{\JeopardyTitle}% + + \edef\temp{\noexpand\textField[\noexpand\Ff{\noexpand\FfReadOnly}% + \noexpand\F{\noexpand\FHidden}% + \noexpand\Q{1}% + \noexpand\textSize{0}% + \noexpand\V{\ChampionMsg}\the\GrandPoohbahtoks% + ]{GrandPoohbah}{\textwidth}{\the\GrandPoohbahHeight}}% + \temp + + \leavevmode + \ifnum\NumberOfQuestions>0% + \ifnum\NumberOfCategories>0% + \multido{\i=1+1}{\NumberOfCategories}{\leavevmode + \vtop{\hsize=\CellWidth \centering + \the\everyCategoryHead\csname CategoryName\i\endcsname }}\\% + \leavevmode + \if@jeopardyBgPicture\insertJeopardyPicture\fi + \Multido{\i=1+1}{\NumberOfQuestions}% + {\edef\j{\i}% + \if@jeopardyPicture\hbox to 0 pt{\hss$\j$ }\fi + {\Multido{\i=1+1}{\NumberOfCategories}{% + \edef\temp{\noexpand\textField[% + \noexpand\Ff{\noexpand\FfReadOnly}% + \noexpand\S{S}% + \noexpand\Q{1}% + \the\Celltoks]{Field\j\i}{\CellWidth}{\CellHeight}}% + \hbox to 0 pt{\temp\hss}% + \if@jeopardyPicture + \pushButton[\S{B}% + \A{\JS{kliknuti(\j,\i);}}]{Button\j\i}{\CellWidth}{\CellHeight}% + \else + \pushButton[\S{B}\CA{\j00}% + \A{\JS{kliknuti(\j,\i);}}]{Button\j\i}{\CellWidth}{\CellHeight}% + \fi + }\\\leavevmode}% + }% + \fi + \fi + \par + \AfterGameBoard + \if@jeopardyPicture + \smallskip\leavevmode + \hfill\pushButton[\A{\JS{hideall();}}\CA{Solution}]{Solution}{1.5cm}{12bp} + \else + \@makeScoreField + \fi + \end{center}% + \newpage +}% + +\def\@makeScoreField +{ + \ifoneplayer + \dimen0=\NumberOfCategories\CellWidth + \edef\temp{\noexpand\textField[\noexpand\V{}\noexpand\textSize{0} + \noexpand\Q{1} + \noexpand\Ff{\noexpand\FfReadOnly} + \the\Scoretoks + ]{Total.1}{\dimen0}{\ScoreCellHeight}}% + \temp + \else%two players + \dimen0=\NumberOfCategories\CellWidth + \dimen1=0.5\dimen0 + \edef\temp{\noexpand\textField[\noexpand\V{}\noexpand\textSize{0} + \noexpand\Q{1} + \noexpand\Ff{\noexpand\FfReadOnly} + \the\Scoretoks + ]{Total.1}{\dimen1}{\ScoreCellHeight}}% + \temp + \edef\temp{\noexpand\textField[\noexpand\V{}\noexpand\textSize{0} + \noexpand\Q{1} + \noexpand\Ff{\noexpand\FfReadOnly} + \the\Scoretoks + ]{Total.2}{\dimen1}{\ScoreCellHeight}}% + \temp\\ + \hbox to \hsize{\hss\hbox to \dimen0 + {\hss + \radioButton[\V{1}\Ff{\FfNoToggleToOff}\A{\JS{player=1;this.getField("whoanswers").value= "\who@answers@msg{A}";}}]{radio}{12pt}{12pt}{1} + \hss + \hbox % to 0 pt + {\hss + \edef\temp{% + \noexpand\textField[\noexpand\Q{1}\noexpand\Ff{\noexpand\FfReadOnly}\noexpand\V{\who@answers@msg{A}}\the\Playertoks] + {whoanswers}{0.6\dimen0}{10pt}}\temp\hss + } + \hss + \radioButton[\Ff{\FfNoToggleToOff}\A{\JS{player=2;this.getField("whoanswers").value= "\who@answers@msg{B}";}}]{radio}{12pt}{12pt}{2} + \hss}\hss + }% + \fi +} + +\let\AfterGameBoard\relax +\edef\Goal{45*(1+numQuestions)*numQuestions*numCategories*\JeopardyScaleFactor} +% \end{macrocode} +% Basic Java functionality is rewritten from |jj_game.cls|. We start +% with initial declarations. +% \begin{macrocode} + +\def\update@who@answers{ +if (player==1) this.getField("whoanswers").value= "\who@answers@msg{A}"; +else this.getField("whoanswers").value= "\who@answers@msg{B}"; +} + +\edef\JeopardyUpdatescore +{ + \ifoneplayer + this.getField("Total.1").value="\Scoremessage: "+TotalScoreA; + if (TotalScoreA>0) + this.getField("Total.1").textColor=\correctColor; + else this.getField("Total.1").textColor=\wrongColor; + \else + this.getField("Total.1").value="\Scoremessage: "+TotalScoreA; + if (TotalScoreA>0) + this.getField("Total.1").textColor=\correctColor; + else this.getField("Total.1").textColor=\wrongColor; + this.getField("Total.2").value="\Scoremessage: "+TotalScoreB; + if (TotalScoreB>0) + this.getField("Total.2").textColor=\correctColor; + else this.getField("Total.2").textColor=\wrongColor; + if (player==1) {player=2; this.getField("radio").value=2;} + else {player=1; this.getField("radio").value=1}; + \update@who@answers + \fi +} + + + +\begin{insDLJS}[dljslibRMb]{dljsliRMb}{RMb} +numQuestions = \the\NumberOfQuestions; +numCategories = \the\NumberOfCategories; +var player=1; +RowClick=0; +ColClick=0; +SaveRowClick=0; +SaveColClick=0; +totalQuestions = numQuestions * numCategories; +var QAed =""; +for (var i=0; i< totalQuestions; i++)QAed +="0"; +nEM = 0; +nCM = 0; +var submitted = 0; +TotalScoreA = 0; +TotalScoreB = 0; +NumQAed = 0; +Goal = \Goal; +\RightWrongMessages +var Picture=\Picture; +var JeopardyPass=0; +% \end{macrocode} +% These functions check that the page has been opened from the +% Gameboard and save the row and column number of the button which has +% been clicked. The OpenAction on the page is turned off after +% answering all questions. +% \begin{macrocode} + +function kontrola(row,col) +{ + if (NumQAed<totalQuestions) + { + var p = numQuestions*(col-1)+row-1; + if (row!=RowClick) gotoNamedDest("GameBoard"); + if (col!=ColClick) gotoNamedDest("GameBoard"); + RowClick=0; + ColClick=0; + } +}; + +function kliknuti(row,col) +{RowClick=row; +ColClick=col; +SaveColClick=col; +SaveRowClick=row; +gotoNamedDest(row+""+col); +}; + +% \end{macrocode} +% This function notifies the user. If the option |picture| is active, +% it also and hides the field on Gameboard in the case of correct +% answer. +% \begin{macrocode} +function useranswer(ans,rowans,colans) +{ + if ((rowans!=SaveRowClick) || (colans!=SaveColClick)) + { + app.alert("\fairmsg"); + gotoNamedDest("GameBoard"); + return null; + } + row= SaveRowClick; + col= SaveColClick; + this.getField("Button"+row+col).hidden=true; + var p = numQuestions*(col-1)+row-1; + if (QAed.charAt(p)==0) + { + QAed = QAed.substring(0,p)+1+QAed.substring(p+1,totalQuestions); + if (ans==1) + { + if (Picture==1) + { + this.getField("Field"+row+col).hidden=true; + } + else + { + this.getField("Field"+row+col).textColor=\correctColor; + this.getField("Field"+row+col).value="\RightMessage"; + } + if (player==1) + TotalScoreA += \JeopardyScaleFactor*row*100; + else + TotalScoreB += \JeopardyScaleFactor*row*100; + app.alert(aCM[nCM],3); + if (++nCM > 6) nCM=0; + } + else + { + if (Picture!=1) + { + this.getField("Field"+row+col).textColor=\wrongColor; + this.getField("Field"+row+col).value="\WrongMessage"; + } + if (player==1) + TotalScoreA -= \JeopardyScaleFactor*row*100; + else + TotalScoreB -= \JeopardyScaleFactor*row*100; + app.alert(aEM[nEM],3); + if (++nEM > 6) nEM=0; + } + if ((++NumQAed>=totalQuestions) && ((TotalScoreA+TotalScoreB)>=Goal)) + { + if (Picture!=1) this.getField("GrandPoohbah").hidden=false; + } + } + else + app.alert(\NotAllowedMesssage); + gotoNamedDest("GameBoard"); + if (Picture!=1) + { + \JeopardyUpdatescore + } +}; +% \end{macrocode} +% This function hides in the first call all fields and buttons on the +% gameboard and after the second call shows the |\ChampionMsg|. In +% addition, it sets |NumQAed=totalQuestions| and the user is allowed to +% go through the pages of the document. +% \begin{macrocode} +function hideall(){ + NumQAed=totalQuestions; + var i=0; + var j=1; + if (JeopardyPass==0) + { + JeopardyPass=1; + for (var i=0; i< numQuestions; i++) + { + for (var j=0; j< numCategories; j++) + { + row=i+1; col=j+1; + this.getField("Field"+row+col).hidden=true; + this.getField("Button"+row+col).hidden=true; + } + } + } + else + this.getField("GrandPoohbah").hidden=false; +} +% \end{macrocode} +% We redefine function used in |exerquiz| package. We will turn off +% notification of the correct and incorrect answers by changing the +% strokecolor of the text fields. +% \begin{macrocode} +function notifyField(success, flag, fieldname) { + return success; +} +\end{insDLJS} +% \end{macrocode} +% The fields in Acrobat have bigger dimension than their dimensions +% visible by \TeX. From this reason they overlap a bit. The user may +% try to remove this overlap, which is not nice together with picture, +% using option |finetune|. This option tries to resolve this problem +% by using smaller buttons than the |\CellWidth| and |\CellHeight|. +% The user has to set manually the dimension |\AditionalShift| which +% is used to shift the image vertically to adjust correct position. +% (Sorry for the inconvenience.) I know that this solution is not +% clean enough but \dots I did my best. At least for this verion of +% |jeopardy| style. Look at the files |game1a.tex| and |game4.tex|. +% You can also try to remove the option |finetune| from these files +% and compaile again to note the difference. +% \begin{macrocode} +\newlength\AditionalShift +\AditionalShift=0pt + +\if@jeopardyFineTune +\newlength \finetunelength +\newlength \finetuneCellWidth +\newlength \finetuneCellHeight +\finetunelength=1pt + +\def\insertJeopardyPicture{% + \dimen1=\finetunelength + \multiply\dimen1 by \NumberOfCategories + \advance\dimen1 by \GameWidth + \setbox\JeopardyPictureBox=% + \hbox{\includegraphics[width=\dimen1]{\JeopardyPictureFile}}% + \dimen1=\finetunelength + \multiply\dimen1 by \NumberOfQuestions + \dimen2=\ht\JeopardyPictureBox + \advance\dimen2 by -1.9\dimen1 + \SetGameHeight{\dimen2}% + \dimen0=\CellHeight + \divide\dimen0 by 2 + \hbox to 0 pt{\vbox to 0 pt{\kern -\dimen0\kern-\AditionalShift + \box\JeopardyPictureBox\vss}\hss}% +} + + + +\def\MakeGameBoard{% + \begin{center}% + \fboxsep=\finetunelength + \fboxrule=0pt + \hypertarget{GameBoard}{\JeopardyTitle}% + + \edef\temp{\noexpand\textField[\noexpand\Ff{\noexpand\FfReadOnly}% + \noexpand\F{\noexpand\FHidden}% + \noexpand\Q{1}% + \noexpand\textSize{0}% + \noexpand\V{\ChampionMsg}\the\GrandPoohbahtoks% + ]{GrandPoohbah}{\textwidth}{\the\GrandPoohbahHeight}}% + \temp + + \leavevmode + \ifnum\NumberOfQuestions>0% + \ifnum\NumberOfCategories>0% + \multido{\i=1+1}{\NumberOfCategories}{\leavevmode + \vtop{\hsize=\CellWidth \centering + \the\everyCategoryHead\csname CategoryName\i\endcsname }}\\% + \leavevmode + \if@jeopardyBgPicture\insertJeopardyPicture\fi + \finetuneCellWidth=\CellWidth + \advance\finetuneCellWidth by -\finetunelength + \finetuneCellHeight=\CellHeight + \vtop{% + \Multido{\i=1+1}{\NumberOfQuestions}% + {\edef\j{\i}% + \hbox{% + \if@jeopardyPicture\hbox to 0 pt{\hss$\j$ }\fi + \Multido{\i=1+1}{\NumberOfCategories}{% + \edef\temp{\noexpand\textField[% + \noexpand\Ff{\noexpand\FfReadOnly}% + \noexpand\S{S}% + \noexpand\Q{1}% + \the\Celltoks]{Field\j\i}{\finetuneCellWidth}{\finetuneCellHeight}}% + \fbox{\hbox to 0 pt{\temp\hss}% + \if@jeopardyPicture + \pushButton[\S{B}% + \A{\JS{kliknuti(\j,\i);}}]{Button\j\i}{\finetuneCellWidth}{\finetuneCellHeight}% + \else + \pushButton[\S{B}\CA{\j00}% + \A{\JS{kliknuti(\j,\i);}}]{Button\j\i}{\finetuneCellWidth}{\finetuneCellHeight}% + \fi% + }}}\kern-1pt + }}% + \fi %%% \ifnum\NumberOfQuestions>0% + \fi %%% \ifnum\NumberOfCategories>0% + \par + \AfterGameBoard + \if@jeopardyPicture + \smallskip\leavevmode + \hfill\pushButton[\A{\JS{hideall();}}\CA{Solution}]{Solution}{1.5cm}{12bp} + \else%not picture + \@makeScoreField + \fi + \end{center}% + \newpage +}% +\fi + +% \end{macrocode} +% The user may write his/her customizations into jeopardy.cfg. +% \begin{macrocode} +\IfFileExists{jeopardy.cfg}{% + \typeout{---------------------------------------------------} + \typeout{jeopardy: Configuration from the file jeopardy.cfg.} + \typeout{---------------------------------------------------} + \input jeopardy.cfg}{} +%</package> +% \end{macrocode} +% We define shorter navigation panel if |pdfscreen.sty| package is used. +% \begin{macrocode} +%<*cfg> +\ifx\NavigationPanel\undefined\else +\def\NavigationPanel{\normalsfcodes% + \href{\@urlid}{\addButton{\buttonwidth}{\tiny\@Panelhomepagename}}\\ \pfill + \hyperlink{GameBoard}{\addButton{\buttonwidth}{\tiny GameBoard}}\\ \pfill + \Acrobatmenu{FullScreen}{\addButton{\buttonwidth}{\tiny\@Panelfullscreenname}}\\\pfill + \Acrobatmenu{Close}{\addButton{\buttonwidth}{\tiny\@Panelclosename}}\\\pfill + \Acrobatmenu{Quit}{\addButton{\buttonwidth}{\tiny\@Panelquitname}}\\ +} +\fi +\def\PDFSCR@Warning#1{} +%</cfg> +% \end{macrocode} +% \Finale +\endinput diff --git a/macros/latex/contrib/jeopardy/jeopardy.ins b/macros/latex/contrib/jeopardy/jeopardy.ins new file mode 100644 index 0000000000..5efb3e5cd4 --- /dev/null +++ b/macros/latex/contrib/jeopardy/jeopardy.ins @@ -0,0 +1,63 @@ +%% +%% Copyright (C) 2004 by Scott Pakin <scott+dtx@pakin.org> +%% +%% This file may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License, either version 1.2 of this license +%% or (at your option) any later version. The latest version of this +%% license is in: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% and version 1.2 or later is part of all distributions of LaTeX version +%% 1999/12/01 or later. +%% + +\input docstrip.tex +\keepsilent + +\usedir{tex/latex/jeopardy} + +\preamble + +This is a generated file. + +Copyright (C) 2006 by Robert Marik <marik@mendelu.cz> + +This file may be distributed and/or modified under the conditions of +the LaTeX Project Public License, either version 1.2 of this license +or (at your option) any later version. The latest version of this +license is in: + + http://www.latex-project.org/lppl.txt + +and version 1.2 or later is part of all distributions of LaTeX version +1999/12/01 or later. + +\endpreamble + +\generate{\file{jeopardy.sty}{\from{jeopardy.dtx}{package}} + \file{jeopardy.cfg}{\from{jeopardy.dtx}{cfg}} +} + +\obeyspaces +\Msg{*************************************************************} +\Msg{* *} +\Msg{* To finish the installation you have to move the following *} +\Msg{* file into a directory searched by TeX: *} +\Msg{* *} +\Msg{* jeopardy.sty *} +\Msg{* *} +\Msg{* *} +\Msg{* *} +\Msg{* You can insert your customizations into file *} +\Msg{* *} +\Msg{* jeopardy.cfg *} +\Msg{* *} +\Msg{* To produce the documentation run the file jeopardy.dtx *} +\Msg{* through LaTeX. *} +\Msg{* *} +\Msg{* Happy TeXing! *} +\Msg{* *} +\Msg{*************************************************************} + +\endbatchfile diff --git a/macros/latex/contrib/jeopardy/jeopardy.pdf b/macros/latex/contrib/jeopardy/jeopardy.pdf Binary files differnew file mode 100644 index 0000000000..d5ba30e72a --- /dev/null +++ b/macros/latex/contrib/jeopardy/jeopardy.pdf |