Ich versuche gerade, eine Prüfungsvorlage für mein Institut zu erstellen. Was ich erhalten möchte, ist Folgendes:
Aufgabe 1 [8 Punkte]
(Text Text Text)
Teilaufgabe 1.1 [3 Punkte]
(Text Text Text)
Subask 1.2 [5 Punkte]
(Text Text Text)
Und die [8 Punkte] der Aufgabe 1 sind eigentlich das Ergebnis der Unteraufgaben 3+5 Punkte.
Ich habe versucht, dieses Problem mit dem Paket „calculator“ zu lösen. Das Problem bestand darin, das Endergebnis der Aufgabe zu aktualisieren. Hier ist mein kurzes Latex-Skript:
\documentclass[10pt,a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{calculator}
\usepackage{lipsum}
\begin{document}
\newcommand{\res}{0}
\section{First Task [\res\, Points]}
\newcommand{\temp}{5}
\subsection{[\temp\, Points]}
\lipsum[1]
\ADD{\res}{\temp}{\res}
\renewcommand{\temp}{8}
\subsection{[\temp \,Points]}
\lipsum[1]
\ADD{\res}{\temp}{\res}
\end{document}
Vielen Dank für Eure Anregungen!
Antwort1
Für diese Art von Aufgabe stehen zahlreiche Pakete zur Verfügung (siehehttps://www.ctan.org/topic/exam), aber wenn Sie es manuell machen möchten, können Sie das xcntperchap
Paket verwenden:
\documentclass{article}
\usepackage{xcntperchap}
\usepackage{multido}
\newcounter{points}
\RegisterCounters{section}{points}
\RegisterCounters{subsection}{points}
\usepackage{xpatch}
\newcounter{totalsubsection}
\xpretocmd{\subsection}{\stepcounter{totalsubsection}}{}{}
\begin{document}
\section{Sectiona \ObtainTrackedValueExp{section}{points}}
\subsection{subsectiona \ObtainTrackedValueExp[\value{totalsubsection}]{subsection}{points} }
\multido{}{2}{\refstepcounter{points}}
\subsection{subsectionb \ObtainTrackedValueExp[\value{totalsubsection}]{subsection}{points} }
\multido{}{3}{\refstepcounter{points}}
\section{Sectionb \ObtainTrackedValueExp{section}{points}}
\subsection{subsectionc \ObtainTrackedValueExp[\value{totalsubsection}]{subsection}{points} }
\multido{}{1}{\refstepcounter{points}}
\subsection{subsectiond \ObtainTrackedValueExp[\value{totalsubsection}]{subsection}{points} }
\multido{}{2}{\refstepcounter{points}}
\end{document}