17.07.2013 Views

Introduktion til LaTeX

Introduktion til LaTeX

Introduktion til LaTeX

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Eksempel<br />

10.36<br />

£<br />

\usepackage{algpseudocode,amsmath}<br />

\begin{algorithmic}[3]<br />

slut preamble<br />

\Procedure{Euclid}{a,b}<br />

\State $r=a\mod b$ \label{start}<br />

\While{$r\neq 0$}<br />

\State $a=b$<br />

\State $b=r$<br />

\State $r=a\mod b$<br />

\EndWhile<br />

\State \textbf{return} $b$<br />

\EndProcedure<br />

\end{algorithmic}<br />

Linie \ref{start}\dots<br />

Vi observerer at<br />

10. Diverse<br />

procedure Euclid(a,b)<br />

r = a mod b<br />

3: while r 0 do<br />

a = b<br />

b = r<br />

6: r = a mod b<br />

end while<br />

return b<br />

9: end procedure<br />

Linie 2. . .<br />

– vi har nogle operations punkter som altid optræder i par, f.eks. \While og \End-<br />

While,<br />

– hver af disse par eller makroen \State starter en ny linie,<br />

– linierne bliver automatik indenteret indenfor et \〈X〉. . . \End〈X〉-par.<br />

Rent teknisk er alle disse strukturer faktisk implementeret via lister, hvert makropar<br />

starter (og slutter) en ny liste og indholdet af denne bliver så indenteret. Indeni<br />

disse lister svarer \State så <strong>til</strong> \item. Bemærk også at kun hvert punkt i disse »lister«<br />

nummereres, det er ikke linienumre i gængs forstand.<br />

10.9.2 Struktur konstruktioner<br />

Bemærk at de makroer vi beskriver her passer <strong>til</strong> algorithmicx version 1.2, af 27. april<br />

2005.<br />

Først makroer som ikke har en \End〈X〉 makker.<br />

\State<br />

anvendes <strong>til</strong> at lave nye punkter i beskrivelsen, tæller desuden linienummeret en<br />

op.<br />

\Statex<br />

som \State men ændrer ikke ved linienummeret, faktisk kommer der slet ikke<br />

noget nummer ved dette punkt. Anvendeligt <strong>til</strong> at indsætte en blank linie.<br />

\Require<br />

anvendes foran start betingelser.<br />

\Ensure<br />

anvendes foran slutbetingelser.<br />

\Call{〈navm〉}{〈argument〉}<br />

anvendes <strong>til</strong> funktionskald, navnet bliver så formateret som ved \Procedure eller<br />

\Function, se nedenfor.<br />

\comment{〈tekst〉}<br />

<strong>til</strong> kommentarer. Udseendet kan ændres, se János (2005).<br />

Makroerne ovenfor starter i sig selv ikke nogen ny liste. Vi mangler så de forskellige<br />

par-konstruktioner som hver især starter en underliste.<br />

\For{〈tekst〉}. . . \EndFor<br />

en for-løkke.<br />

Kapitlet er sidst opdateret 2010/03/04 00:31 (revision 659)<br />

268

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!