summaryrefslogtreecommitdiff
path: root/obsolete/macros/latex/contrib/alterqcm/doc/latex/doc-aq-def.tex
blob: 6f7848bb6c6f97c27f2b742b330a5463cd761bae (plain)
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
%!TEX root = /Users/ego/Boulot/Alterqcm/doc/doc_aq-main.tex     
\section{Les outils : L' environnement \tkzname{alterqcm} et la macro  \tkzcname{AQquestion}}
\subsection{L' environnement \tkzname{alterqcm}}


\bigskip
\begin{NewEnvBox}{alterqcm} 

\noindent Voici la liste des \tkzname{options} disponibles classées par catégories.

\medskip
\begin{tabular}{@{}Il Il Il@{}} 
	\toprule
	\thead
Options                &Défaut          & Définition                                \\ \midrule
\tbody
\multicolumn{2}{c}{\emph{\texttt{Dimensions}}} \\ \cmidrule(r){1-2}
\TOenvline{lq}        {100mm}  {largeur de la colonne question            }
\TOenvline{pq}        {0pt}    {déplacement vertical de la question       } \cmidrule(r){1-2}
\multicolumn{2}{c}{\emph{\texttt{Nombres}}} \\ \cmidrule(r){1-2}
\TOenvline{bonus}     {{0,5}}  {points attribués à une bonne réponse      }
\TOenvline{malus}     {{0,25}} {points attribués à une mauvaise réponse   }
\TOenvline{numbreak}  {0}    {pour reprendre un tableau scindé          }
\TOenvline{points}  {empty}{ points attribués au qcm dans la marge} \cmidrule(r){1-2}
\multicolumn{2}{c}{\emph{\texttt{Macros}}} \\ \cmidrule(r){1-2}
\TOenvline{symb}      {\$\BS square\$} {symbole devant la proposition     }
\TOenvline{corsymb}{\$\BS blacksquare\$}{symbole devant la proposition    }
\TOenvline{numstyle}  {\BS arabic} {style de la numérotation des questions  }
\TOenvline{propstyle} {\BS alph} {style de la numérotation des propositions }
\TOenvline{size}  {\BS normalsize} {taille de la fonte           }
\TOenvline{afterpreskip}{\BS medskip} {skip après la présentation  }  
\cmidrule(r){1-2}
\multicolumn{2}{c}{\emph{\texttt{Booléens}}} \\ \cmidrule(r){1-2}
\TOenvline{long}      {true}     {longtable à la place de tabular   }
\TOenvline{sep}       {true}  {filet de séparation entre les propositions}
\TOenvline{pre}       {false}  {présentation du QCM          }
\TOenvline{VF}        {false}  {QCM sous la forme Vrai ou Faux }
\TOenvline{numprop}   {false}  {numérotation des propositions    }
\TOenvline{num}       {true}   {style de la numérotation des questions  }
\TOenvline{nosquare}  {false}   {suppression du carré des propositions     }
\TOenvline{title}     {false} {suppression des titres                    }
\TOenvline{correction}{false} {permet de créer un corrigé                }
\TOenvline{alea}      {false}  {placer des propositions aléatoirement     } \cmidrule(r){1-2}
\multicolumn{2}{c}{\emph{\texttt{Textes}}} \\ \cmidrule(r){1-2}
\TOenvline{tone}     {Questions} {titre colonne 1                           }
\TOenvline{ttwo}     {R\'eponses} {titre colonne 2     } 
\TOenvline{language}  {french}  {french, english ou german   }
 \bottomrule
\end{tabular}

\medskip

\emph{Il suffit donc pour créer un \textcolor{red}{\texttt{QCM}} d'utiliser un environnement \textcolor{red}{\texttt{alterqcm}} ainsi que la macro \textcolor{red}{ \addbs{AQquestion}} définie dans la section suivante.}
\end{NewEnvBox} 

\newpage
\subsection{La commande \tkzcname{AQquestion}} 
\Imacro{AQquestion}

\begin{NewMacroBox}{AQquestion}{\oarg{local options}{\var{quest}}\{{\var{$\mathrm{prop}_1$}},\ldots,{\var{$\mathrm{prop}_n$}}\}}
Cette macro utilise deux arguments, le premier définit la question, le second est une liste qui définit les propositions.

\medskip
\begin{tabular}{@{}Il Il Il@{}}  \toprule \thead
arguments                 & défaut           & définition    \\ 
\midrule
\tbody
\TAline{quest}  {}     {définition de la question}          
\TAline{$\mathrm{prop}_i$}  {}     {i\ieme\ proposition}       \bottomrule
\end{tabular}

\medskip
Voici la liste des options liées à cette macro.

\medskip
\begin{tabular}{@{}Il Il Il@{}}  \toprule \thead
options                 & défaut           & définition                    \\ \midrule
\tbody
\TOline{pq}  {0pt}     {ajustement de la position de la question}   
\TOline{br}  {1  }     {liste de rangs des bonnes réponses  }           \bottomrule
\end{tabular}
  
\medskip

\end{NewMacroBox}
 
\subsection{Utilisation : premier exemple}

Il suffit d'utiliser un environnement \tkzname{alterqcm} et la macro \tkzcname{AQquestion}, voici un exemple :


 \noindent
\begin{minipage}[c][][t]{.40\linewidth}  
\begin{tkzexample}[code only,small]
 \documentclass[12pt]{article}
 \usepackage[utf8]{inputenc}
 \usepackage[upright]{fourier}
 %\usepackage[T1]{fontenc}
 %\usepackage{lmodern}
 \usepackage{alterqcm}
 \usepackage{fullpage}
 %\usepackage{longtable} 
 % nécessaire pour l'option "long"
 \usepackage[frenchb]{babel}
 \parindent0pt
 \begin{document}
 \begin{alterqcm} 
  \AQquestion{Question}{% 
  {Proposition 1},
  {Proposition 2},
  {Proposition 3}}
 \end{alterqcm}
 \end{document}\end{tkzexample}
\end{minipage}\hfill \noindent  
\begin{minipage}[c][][b]{.50\linewidth}
\textbf{alterqcm.sty} crée un nouvel environnement \textbf{alterqcm} qui permet l'obtention d'un tableau à deux colonnes. La colonne de gauche pour les questions, l'autre pour les différentes propositions.  Les propositions sont données dans une liste :

\tkzname{\{\{Proposition 1\},\\\{Proposition 2\},\\\{Proposition 3\}\}}.

 Le nombre de propositions est compris entre \tkzname{2} et \tkzname{5}.
\end{minipage}

\medskip
Ce qui donne comme résultat :

\bigskip
  \begin{alterqcm}
  \AQquestion{Question}
  {%
  {Proposition 1},
  {Proposition 2},
  {Proposition 3}%
  }
  \end{alterqcm}

\medskip
 La largeur totale du tableau est égale à \tkzcname{textwidth}. Par défaut la  colonne question a pour largeur \tkzname{100mm} plus quelques millimètres ... introduits par le tableau. La largeur des réponses est égale à \tkzcname{textwidth} diminuée de la largeur de la première colonne. \Imacro{textwidth}

Le point important est que la hauteur des lignes des propositions soit calculée automatiquement afin, d'une part, que le texte des propositions soit placé correctement sans toucher les filets et d'autre part, que le texte de la question correspondante puisse être inclus dans sa case. Un positionnement précis est obtenu avec l'option \tkzname{pq}.  

\subsection{Packages chargés par \tkzname{alterqcm.sty}}
La liste des packages chargés est la suivante :

\begin{tkzexample}[code only]
	\RequirePackage{xkeyval}[2005/11/25]
	\RequirePackage{calc}
	\RequirePackage{ifthen,forloop}
	\RequirePackage{array}
	\RequirePackage{multirow}
	\RequirePackage{pifont}
\end{tkzexample}
\NamePack{xkeyval}\NamePack{calc}\NamePack{ifthen}\NamePack{forloop}\NamePack{array}\NamePack{multirow}
\NamePack{pifont}

Il vous sera nécessaire de charger \tkzname{longtable.sty} si vous souhaitez utiliser l'option \tkzname{long} pour un de vos tableaux. Vous avez besoin aussi de la macro \tkzcname{square}, elle est soit définie dans le package \tkzname{fourier}, soit dans le package \tkzname{amsmath}.\NamePack{amsmath}\NamePack{fourier}.


 \subsection{Utilisation de l'environnement \tkzname{minipage} pour modifier la largeur du tableau}
\Ienv{minipage}

\begin{minipage}[c][][t]{.3\linewidth}
\begin{tkzltxexample}[small]

 \begin{center}
 \begin{minipage}{9cm}
  \begin{alterqcm}[lq=5cm]
    ...
  \end{alterqcm}
 \end{minipage}
 \end{center}
\end{tkzltxexample}
\end{minipage}\hfill 
\begin{minipage}[c][][t]{.6\linewidth}
\begin{alterqcm}[lq=5cm]
\AQquestion{Parmi les propositions suivantes, quelle est celle qui permet%
 d'affirmer que la fonction exponentielle  admet pour asymptote la droite%
  d'équation $y = 0$ ?}
{%
{$\displaystyle\lim_{x \to +\infty} \text{e}^x = + \infty$},%
{$\displaystyle\lim_{x \to -\infty} \text{e}^x = 0$},%
{$\displaystyle\lim_{x \to +\infty} \dfrac{\text{e}^x}{x} = + \infty$}%
}

\AQquestion[]{exp$(\ln x) = x$ pour tout $x$ appartenant à }
{%
{$\mathbf{R}$},%
{$\big]0~;~+ \infty\big[$},%
{$\big[0~;~+\infty\big[$}%
}\end{alterqcm}
\end{minipage} 
% 


\subsection{Modification temporaire de \tkzcname{textwidth}}
\Imacro{textwidth}
 Il est possible d'utiliser des tableaux ainsi que d'autres structures dans le code de la question ou encore des propositions. Voici un exemple :
\newlength{\oldtextwidth}

\begin{tkzltxexample}[small]
	\newlength{\oldtextwidth}
\end{tkzltxexample}

\medskip
	\setlength{\oldtextwidth}{\textwidth}
	\setlength{\textwidth}{14cm}
\begin{alterqcm}[lq=88mm,symb=$\Box$]
 \AQquestion{la matrice%
 \( M=\begin{pmatrix}
        0 & 1 \\
        1 & 1 \\
\end{pmatrix} \)  a pour carré}%
{%
{\(\begin{pmatrix}
        0 & 1 \\
        1 & 4 \\
\end{pmatrix}\)},%
{\(\begin{pmatrix}
        1 & 2 \\
        2 & 5 \\
 \end{pmatrix}\)}
}
\end{alterqcm}
\setlength{\textwidth}{\oldtextwidth}  

\medskip
\begin{tkzltxexample}[small]
  \setlength{\oldtextwidth}{\textwidth}
  \setlength{\textwidth}{14cm}
 \begin{alterqcm}[lq=88mm,symb=$\Box$]
  \AQquestion{la matrice%
  \( M=\begin{pmatrix}
         0 & 1 \\
         1 & 1 \\
 \end{pmatrix} \)  a pour carré}%
 {%
 {\(\begin{pmatrix}
         0 & 1 \\
         1 & 4 \\
 \end{pmatrix}\)},%
 {\(\begin{pmatrix}
         1 & 2 \\
         2 & 5 \\
  \end{pmatrix}\)}
 }
 \end{alterqcm}
 \setlength{\textwidth}{\oldtextwidth}
\end{tkzltxexample}



\endinput