Skip to content

Instantly share code, notes, and snippets.

@Romern
Created October 19, 2019 13:04
Show Gist options
  • Save Romern/e4d6f342d0da4ed5107243b013eb78e8 to your computer and use it in GitHub Desktop.
Save Romern/e4d6f342d0da4ed5107243b013eb78e8 to your computer and use it in GitHub Desktop.
\documentclass{exercisesheet}
\newcommand{\BlattNr}{1}
\title{Vorlesung, Übung \BlattNr}
\author{
Max Mustermann \\ 123456
\and
Erika Musterfrau \\ 123457
\and
Spock \\ 694200
}
\renewcommand{\Exercise}{Aufgabe}
\begin{document}
\maketitle
\pointtable
\begin{exercise}{10.5}
\begin{subexercise}
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem
ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore
magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\end{subexercise}
\begin{subexercise}
Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis
at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.
\end{subexercise}
\begin{subexercise}
Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet,
consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\end{subexercise}
\end{exercise}
\begin{exercise}{12}
\begin{subexercise}
Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis.
$$ \nabla \psi(\bar y) = \sum_{k \in [1,n]} \frac{\partial\psi(\bar y)}{\partial x_k}e_k$$
Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.
Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at
vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.
\end{subexercise}
\end{exercise}
\begin{exercise}{10}
Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\end{exercise}
\begin{exercise}{20}
Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
\end{exercise}
\end{document}
\NeedsTeXFormat{LaTeX2e}
\LoadClass{article}
\ProvidesClass{exercisesheet}
\setlength{\parindent}{0pt}
\RequirePackage{geometry}
\geometry{
a4paper,
left = 2cm,
right = 2cm,
top = 2cm,
bottom = 3cm
}
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{lmodern}
\RequirePackage{amsmath, amsfonts, amssymb, amsthm}
\RequirePackage{multicol}
\RequirePackage{listings}
\RequirePackage{xcolor}
\RequirePackage{tikz}
\usetikzlibrary{shapes, arrows, positioning, patterns, decorations.pathreplacing}
\RequirePackage{totcount}
\RequirePackage{changepage}
\RequirePackage{etoolbox}
\RequirePackage{environ}
\RequirePackage{booktabs}
\RequirePackage{mathtools}
\RequirePackage{xstring}
\RequirePackage{enumerate}
\RequirePackage{hhline}
\RequirePackage{wasysym}
\RequirePackage{latexsym}
\RequirePackage{minted}
\setminted{breaklines}
\newcommand{\longequal}[1]{\mathop{\overset{\mathrm{#1}}{\resizebox{\widthof{\ensuremath{\mathop{\overset{\mathrm{#1}}{=}}}}}{\heightof{=}}{=}}}}
\newcommand{\n}{~\\}
\newcommand{\seperator}{~|~}
\newcommand{\sgn}{\text{sgn}}
\newcommand{\norm}[1]{\left\lVert#1\right\rVert}
\newcommand{\abs}[1]{\left|#1\right|}
% Aufgaben-Commands
% \aufgabe{Punktzahl}
\newtotcounter{exercisenumber}
\newtotcounter{subexercisenumber}
\newtotcounter{totalpoints}
\newcommand{\Exercise}{Exercise}
\newenvironment{exercise}[1]
{
\def\points{#1}
\stepcounter{exercisenumber}
\setcounter{subexercisenumber}{0}
\section*{\Exercise~\arabic{exercisenumber}}
}
{
\phantom{} \hfill A\arabic{exercisenumber}: \framebox[1.75cm]{\hspace{1cm}/\hfill\points\hspace{5pt}} \\
\addtocounter{totalpoints}{100*\real{\points}}
\addPT{\arabic{exercisenumber}}{\points}
}
\newenvironment{subexercise}[1][0]
{
\stepcounter{subexercisenumber}
\ifnum\value{subexercisenumber}=1
\else
\vspace{1em}
\fi
\textbf{(\alph{subexercisenumber})}
\begin{adjustwidth}{2em}{0em}
\vspace{-\baselineskip}
}
{
\end{adjustwidth}
}
\newcommand{\addPT}[2]
{
\edef\tempA{A#1 &}
\edef\tempB{\qquad/#2 &}
\expandafter\gappto\expandafter\PTableA\expandafter{\tempA}
\expandafter\gappto\expandafter\PTableB\expandafter{\tempB}
\expandafter\gappto\expandafter\PTHead\expandafter{c | }
}
\newcommand{\pointtable}{
\begin{table}[h!]
\centering
\ifcsname PTableASaved\endcsname
\begin{tabular}{\PTHeadSaved c}
\PTableASaved $\Sigma$ \\ \hline
\PTableBSaved \qquad / \StrGobbleRight{\totalpointsSaved}{2}.\StrRight{\totalpointsSaved}{2}
%\PTableBSaved \qquad / \totalpointsSaved
\end{tabular}
\else
Compile again\ClassWarning{Compile again}
\fi
\end{table}
}
\AtEndDocument{
\makeatletter
\immediate\write\@mainaux{\string\gdef\string\PTableASaved{\PTableA}}%
\immediate\write\@mainaux{\string\gdef\string\PTableBSaved{\PTableB}}%
\immediate\write\@mainaux{\string\gdef\string\PTHeadSaved{\PTHead}}%
\setcounter{totalpoints}{\totvalue{totalpoints}}
\immediate\write\@mainaux{\string\gdef\string\totalpointsSaved{\arabic{totalpoints}}}%
\makeatother
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment