- Questo topic ha 5 risposte, 5 partecipanti ed è stato aggiornato l'ultima volta 3 anni, 6 mesi fa da .
-
Topic
-
Ciao, vorrei un vostro parere perché qualcosa non va con questo esempio (o con la mia testa).Vorei scrivere nel file sorgente TeX le risposte degli esercizi a scelta multipla
accanto alla descrizione del problema, le risposte però devono essere riperibili e stampate
solo alla fine del pdf (come le chiavi di risposta di un libro di grammatica alla fine del capitolo)Occorre che non riesco a forzare l’espansione in loco del contatore dell’ambiente “esercizio”,
cosicché l’indice dell’esercizio è valutato soltanto alla fine (nell’esempio allegato tutti gli esercizi sono segnati con l’indice 3).Ho poputo raggirare il problema scrivendo le risposta in un file temporaneo il quale
può esse letto alla fine. Ma non la sento del tutto soddisfacente.Ecco l’output che ne ho dal codice:
Esercizio 1. Il primo esercizio.
a)Prima scelta
b)Seconda scelta
c)Terza sceltaEsercizio 2. Il secondo esercizio.
a)Prima scelta
b)Seconda scelta
c)Terza sceltaEsercizio 3. Il terzo esercizio.
a)Prima scelta
b)Seconda scelta
c)Terza sceltaChiavi di risposte
3. c 3. a 3. b➡ La risposta giusta invece è 1.c 2.a 3.b.
Ecco il codice sorgente (devo importare il pacchetto xparse per forza, altrimenti non gira):
`\documentclass{minimal}
\usepackage{xparse}
\usepackage{enumerate}\newcounter{esercizio}
\newenvironment{esercizio}{%
\refstepcounter{esercizio}
\noindent\textbf{Esercizio~\theesercizio.\ \ }}{}\ExplSyntaxOn
\seq_new:N \l_my_seq
\NewDocumentCommand { \chiavidirisposte } { } {
\seq_use:Nn \l_my_seq { \ }
}\NewDocumentCommand { \sceltamultipla } { m }
{
\seq_put_right:Nn \l_my_seq { \theesercizio.\,#1\ }
}\ExplSyntaxOff
\begin{document}
\begin{esercizio}
Il primo esercizio.
\end{esercizio}
\sceltamultipla{c}
\begin{enumerate}[a)]
\item Prima scelta
\item Seconda scelta
\item Terza scelta
\end{enumerate}\begin{esercizio}
Il secondo esercizio.
\end{esercizio}
\sceltamultipla{a}
\begin{enumerate}[a)]
\item Prima scelta
\item Seconda scelta
\item Terza scelta
\end{enumerate}\begin{esercizio}
Il terzo esercizio.
\end{esercizio}
\sceltamultipla{b}
\begin{enumerate}[a)]
\item Prima scelta
\item Seconda scelta
\item Terza scelta
\end{enumerate}Chiavi di risposte
\chiavidirisposte
\end{document}`
Ringrazio in anticipo la vostra attenzione
Cordiali saluti
camil
- Devi essere connesso per rispondere a questo topic.