\documentclass[a4paper,norsk]{article}
\usepackage[utf8]{inputenc}
\title{En dokumentklasse for eksamensoppgaver}
\author{Harald Hanche-Olsen}
\usepackage[T1]{fontenc}
\usepackage{lmodern,babel,url}
\usepackage[vscale=0.85]{geometry}
\newcommand{\gpar}{\begingroup\def\par{\endgraf\endgroup}}
\begin{document}
\maketitle
\thispagestyle{empty}

\section*{Innledning}

Vi har to dokumentklasser for å lage eksamensoppgaver:
De er \texttt{NTNUeksamen} og \texttt{IMFeksamen}.
Eneste forskjell på de to er at sistnevnte automatisk deklarerer
instituttnavnet til IMF.
I tillegg er det en klasse \texttt{IMFmidtsemester} for å lage
midtsemesterprøver.

En typisk inputfil kan se slik ut:
\begin{verbatim}
\documentclass[titlepage,a4paper,12pt,norsk]{IMFeksamen}
\usepackage[utf8]{inputenc} % erstatt evt utf8 med latin1
\emnekode{TMA0123}
\emnenavn{Hverdagsmatematikk}
\eksamensdato{24. desember 2013}
\eksamenstid{09:00–13:00}
\fagligkontaktinfo{Ralph Thambs-Lyche}{7359 1234}
\fagligkontaktmoter{JA/NEI (eventuelt anslå tidspunkt)}
\hjelpemiddel{B: Alle trykte og håndskrevne hjelpemidler tillatt.
 Bestemt, enkel kalkulator tillatt.}
\anneninfo{Annen info? Hvilken annen info?}
\trykkinfo
\runninghead{TMA0123 Hverdagsmatematikk 24. desember 2013}
\usepackage[T1]{fontenc}
\usepackage{lmodern,amsmath,amssymb,amsfonts}
\begin{document}
\begin{oppgave}
  I denne oppgaven antas det at en katt fanger en mus i timen.
  \begin{punkt}
    Hvor lang tid bruker 1200 katter på å fange to mus?
  \end{punkt}
  \begin{punkt}
    Gitt en ubegrenset tilgang på mus,
    hvor mange dadaister trengs for å fange én av dem?
  \end{punkt}
\end{oppgave}
\begin{oppgave}
  Regn ut
  \[
  \sqrt{1+2\sqrt{1+3\sqrt{1+4\sqrt{1+\cdots}}}}.
  \]
\end{oppgave}

% Fjern alt herfra til \end{document} om det ikke skal være noen vedlegg
\vedlegg
Dette er en vedleggsside.

\newpage
Og dette er en til.

\end{document}
\end{verbatim}

En fil ved navn \texttt{NTNUeksamen-tom.tex} skal ligge sammen med
\texttt{NTNUeksamen.cls}.
Den inneholder et passende startpunkt for et oppgavesett.

\section{Dokumentklasse og opsjoner}

Dokumentklassen kan typisk være \texttt{IMFeksamen} eller
\texttt{NTNUeksamen}.
Om du bruker \texttt{NTNUeksamen}, må \verb+\institutt+-kommandoen
benyttes; se avsnittet om forsiden.

Klassen har disse opsjonene:
\begin{itemize}
\item Opsjonen \texttt{[titlepage]} gjør at en forside lages
  automatisk ved \verb+\begin{document}+.
  Utelates for eldre
  eksamensoppgaver og andre oppgavesett uten forside.
  Uten denne opsjonen blir ikke \texttt{geometry}-pakken inkludert
  (så du må inkludere den selv om du vil bruke den).

  Opsjonen \texttt{[titlepage]} skrur på \texttt{[twoside]} automatisk.
  Dette kan overstyres med \texttt{[oneside]}.
\item Opsjonen \texttt{[notitlepage]} gjør mer enn bare å utelate
  \texttt{[titlepage]}:
  Den gjør at alle sidene gis samme sidestil.
  Om du hverken spesifiserer \texttt{[notitlepage]} eller
  \texttt{[titlepage]},
  får førstesiden en egen stil som passer til eksamensoppgaver slik de
  ble laget før 2013.
\item Opsjonen \texttt{[colourlogo]} (eller \texttt{[colorlogo]})
  gjør at logoen settes i blått i stedet for svart på forsiden.
  Bør kun brukes dersom oppgavesettet bruker farger ellers.
  Pass i så fall på at oppgavene mangfoldiggjøres i farger.
  Eksamenskontoret kopierer i svart/hvitt
  om de ikke får uttrykkelig beskjed om annet.
\item Opsjonen \texttt{[solutions]} aktiverer \texttt{solutions}-miljøet.
  Se avsnitt \ref{solutions} nedenfor.
\item Opsjonen \texttt{[oldcommands]} er for bakoverkompatibilitet.
  Med den opsjonen kan miljøene \texttt{oppgave} og \texttt{punkt}
  også skrives med stor forbokstav: \texttt{Oppgave} og \texttt{Punkt}.
  I tillegg får du alias-kommandoer \verb+\bOppgave+ og \verb+\eOppgave+
  for henholdsvis \verb+\begin{oppgave}+ og \verb+\end{oppgave}+,
  og tilsvarende \verb+\bPunkt+ og \verb+\ePunkt+.
\item Opsjonen \texttt{[oldlanguageselector]} definerer
  \verb+\BOKMAAL+, \verb+\NORSK+, \verb+\NYNORSK+, \verb+\ENGLISH+ og
  \verb+\ENGELSK+ for \verb+\selectlanguage{norsk}+, og så videre.
\end{itemize}

Klassen er basert på \texttt{report}-klassen, og aksepterer alle
opsjoner som  \texttt{report}-klassen forstår,
selv om enkelta av dem ikke gir mening for eksamensoppgaver.
En av 

Dersom det finnes en fil ved navn \verb+NTNUeksamen.cfg+, så blir den
lest inn. Den kan inneholde ekstra kommandoer, som \verb+\institutt+,
\verb+\oldcommandstrue+ og
\verb+\oldlanguageselectortrue+.
De to sistnevnte skrur på opsjonene
\texttt{[oldcommands]} og \texttt{[oldlanguageselector]}.
Det kan være nyttig om du skal typesette gamle eksamensoppgaver som
trenger disse opsjonene.

En eldre utgave av \texttt{NTNUeksamen.cls} inkluderte automatisk
pakkene amssymb, amsmath og amsfonts. Det gjør vi ikke lenger.
Men du kan få samme effekten med følgende linje i
\verb+NTNUeksamen.cfg+:
\begin{verbatim}
\RequirePackage{amssymb,amsmath,amsfonts}
\end{verbatim}

\section{Automatisk inkluderte pakker}

Pakkene \texttt{graphicx} og \texttt{geometry} inkluderes fordi de
trengs, henholdsvis for å sette NTNU-emblemet og for å sikre at
forsiden plasseres rett på arket.
Du hverken kan eller bør derfor inkludere disse pakkene selv,
men du kan selvsagt bruke dem.
Unntaket er om du ikke har brukt opsjonen \texttt{[titlepage]}.
Da inkluderes ikke \texttt{geometry}-pakken.

Du kan derfor bruke \verb+\geometry{+\ldots\verb+}+ før
\verb+\begin{document}+ i tilfelle du trenger annerledes sidegeometri
(linjelengde og marger) enn det som er standard.
Se dokumentasjonen for \texttt{geometry}-pakken for detaljer.

I tillegg inkluderes pakken \texttt{pageslts}.
Den har til oppgave å telle sider slik at det blir rett i sidehodene
(«Side 2 av 3» i hoveddelen, «Side ii av iii» i vedleggsdelen).
Denne pakken er relativt ny, så hvis du har en TeX-installasjon eldre
enn fra 2012, er det gode sjanser for at du ikke har den.
Du kan enten oppgradere TeX-installasjonen (anbefales),
eller hente pakken fra CTAN (\url{http://www.ctan.org/pkg/pageslts}).

\section{Forsiden}

Formatet på forsiden er bestemt av NTNU sentralt.
Den skal brukes på alle eksamensoppgaver, og lages automatisk
om opsjonen \texttt{[titlepage]} er tatt med.

Alternativt kan forsiden lages separat, for eksempel ved hjelp av
Word-malene som er laget for formålet.
I så fall må du utelate opsjonen \texttt{[titlepage]}.

En rekke av kommandoene i eksempelfilen vist ovenfor gjør ikke annet
enn å forsyne forsiden med informasjon.

Av disse er formodentlig \verb+\emnekode+, \verb+\emnenavn+,
\verb+\eksamensdato+, \verb+\eksamenstid+,
\verb+\fagligkontaktinfo+ og \verb+\hjelpemiddel+ selvforklarende.

Merk at \verb+\fagligkontaktinfo+ krever to argumenter:
Navn og telefon.
Dersom det er flere faglige kontakter,
oppgis de ved å gjenta \verb+\fagligkontaktinfo+.

{\small Kommandoene \verb+\fagligkontakt+ og \verb+\fagligtelefon+
  fungerer fortsatt slik de har gjort i tidligere versjoner,
  men de må nå alltid forekomme i par, med \verb+\fagligkontakt+ først.
\par}

Som argument til \verb+\fagligkontaktmoter+, oppgi JA/NEI og evt.
anslå tidspunkt for når faglig kontakt møter i eksamenslokalet.

Argumentet til \verb+\anneninfo+ kommer på forsiden under overskriften
«Annen info», mens teksten i \verb+\runninghead+ kommer i sidehodet på
alle oppgavesidene (spesielt nyttig dersom oppgaven distribueres uten
forside).

Dersom klassen \verb+NTNUeksamen+ er brukt, må du bruke
\verb+\institutt{+\textit{instituttnavn}\verb+}+ i tillegg.

Fra høstsemesteret 2016 av skal forsiden også inneholde informasjon
for trykking.
Du får med denne ved å inkludere kommandoen \verb+\trykkinfo+.%
\footnote{Du må spesifisere dette eksplisitt.
  Således vil denne boksen ikke komme til syne
  når man regenererer gamle eksamensoppgaver.}
Du kan også sette kryss i boksene, for eksempel slik:
\verb+\trykkinfo[tosidig,farger]+.
Tilgjengelige nøkkelord er \texttt{ensidig}, \texttt{tosidig},
\texttt{sorthvit}, \texttt{farger}, \texttt{flervalg}.

\section{Oppgaver og punkter}

Oppgaver settes med \verb+\begin{oppgave}+\ldots\verb+\end{oppgave}+,
og punkter innenfor oppgavene med \verb+\begin{punkt}+\ldots\verb+\end{punkt}+.

Oppgavene nummereres automatisk 1, 2, \ldots, og punktene nummereres
a, b, c, \ldots. Punkt a angis med a) i teksten. Om du foretrekker et
annet tegn enn en høyreparentes bak, kan du for eksempel skrive
\verb+\punktkolon{.}+ i stedet, for å få et punktum bak bokstaven.

\section{Retteveiledning} \label{solutions}
Miljøet \texttt{solution} ignoreres normalt.
Men om du har tatt med pakkeopsjonen \texttt{[solutions]},
vil innholdet av hvert \texttt{solution}-miljø tas med,
passende markert som retteveiledning.

Om du ønsker en annen tekst i miljøet,
kan du få til dette ved å bruke kommandoen(e)
\begin{verbatim}
\addto{\extrasnorsk}  {\def\SolutionHeader{Løsning}}
\addto{\extrasnynorsk}{\def\SolutionHeader{Løysing}}
\addto{\extrasenglish}{\def\SolutionHeader{Solution}}
\end{verbatim}
(for eksempel) foran \verb+\begin{document}+.

\end{document}
