This commit is contained in:
Darkress
2023-04-04 17:54:49 +02:00
commit cf51fd7775
18 changed files with 1166 additions and 0 deletions

6
.gitignore vendored Normal file
View File

@@ -0,0 +1,6 @@
*.aux
bericht.*
!bericht.tex
!bericht.bib
!bericht.pdf
!bericht.sty

86
Makefile Normal file
View File

@@ -0,0 +1,86 @@
# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# %% Descr: Vorlage fuer Berichte der DHBW-Karlsruhe, Makefile
# %% Author: Prof. Dr. Juergen Vollmer, vollmer@dhbw-karlsruhe.de
# %% $Id: Makefile,v 1.22 2020/03/13 15:10:57 vollmer Exp $
# %% -*- coding: utf-8 -*-
# %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
# Dateiname der Haupt-Datei
BASE = bericht
FMT = $(BASE).fmt
LATEX = pdflatex -file-line-error
BIBTEX = bibtex
MAKEINDEX = makeindex -s $(BASE).ist
# Wo werden die diversen Dateien gesucht:
# Ein // am Ende bedeutet: in allen Unterverzeichnissen
# BIBTEX-Style Files (*.bst)
export BSTINPUTS := .//:$(BSTINPUTS)
# BIBTEX Datenbank(en) (*.bib)
export BIBINPUTS := .//:$(BIBINPUTS)
# LaTeX Styles und Klassen (*.sty, *.cls)
export TEXINPUTS := .//:$(TEXINPUTS)
all: $(BASE).pdf
$(BASE).pdf: *.tex *.bib Makefile.
$(MAKE) clean
$(LATEX) $(BASE).tex
- grep -q "Warning: Citation " $*.log && $(BIBTEX) $(BASE)
- [ -f $(BASE).idx ] && $(MAKEINDEX) $(BASE)
$(LATEX) $(BASE).tex
- grep -q "Warning: Citation " $*.log && $(BIBTEX) $(BASE)
- [ -f $(BASE).idx ] && $(MAKEINDEX) $(BASE)
$(BIBTEX) $(BASE)
$(LATEX) $(BASE).tex
pdf:
$(LATEX) $(BASE)
index:
$(MAKEINDEX) $(BASE)
bib:
$(BIBTEX) $(BASE)
# fmt: --> https://tex.stackexchange.com/questions/79493/ultrafast-pdflatex-with-precompiling
# --> https://ctan.org/pkg/mylatexformat
fmt: $(FMT)
%.fmt:%.tex $(BASE).sty $(BASE).tex
- pdflatex -ini -jobname=$* "&pdflatex" mylatexformat.ltx $*.tex
# Nur Fehlermeldungen ausgeben
check: $(BASE).pdf
@echo; echo "*******************************"; echo; echo;
$(LATEX) -interaction=nonstopmode $(BASE).tex 2>&1 | egrep "LaTeX Warning"; \
if [ $$? -ne 0 ]; then exit 0; else exit 1; fi
# Die Datei "Makefile." muss unter Linux existieren, da ProTexT (Windows)
# einen Bug hat, der verhindert, dass eine Datei ohne einen Punkt mittels
# des listings-Paketets inkludiert werden kann. (Siehe "kapitel2.tex")
Makefile. : Makefile
ln -s Makefile Makefile.
# Hilfsdateien loeschen
clean:
rm -f *.toc *.dvi *.aux *.log *.blg *.bbl *.out *.for \
*.lof *.lol *.lot *.bcf *.run.xml *-blx.bib *.idx \
*.ind *.ilg *.blg *.tdo \
*~
# Wirklich alles loeschen
realclean: clean
rm -f $(BASE).pdf $(BASE).fmt
# Erstelle tar-Archiv des ganzen Verzeichnisses
tar: $(BASE).pdf
$(MAKE) clean
D=`pwd`; D=`basename $$D`; \
cd ..; \
tar --exclude "*.tar.gz" --exclude RCS \
--exclude Pakete --exclude "*.fmt" \
--dereference \
-czvf $$D/latex-vorlage-`date "+%Y-%m-%d"`.tar.gz $$D

88
README.txt Normal file
View File

@@ -0,0 +1,88 @@
Prof. Dr. Juergen Vollmer
<juergen.vollmer@dhbw-karlsruhe.de>
$Date: 2020/03/13 15:53:15 $
Installation von LaTeX unter Microsoft Windows
==============================================
- Download von proTeXt von
http://www.dante.de
bzw.
http://www.tug.org/protext/
- Die Datei
ProTeXt-VESION.exe
ist ein selbstextrahierendes Archiv. Sie sollte mit Administrationsrechten
ausgefuehrt werden und ihr Ergebnis in ein Verzeichnis DIR
auspacken.
- Im Verzeichnis DIR die Datei "setup" mittels Doppelklick starten.
- Als Sprache "Deutsch" und ide TeX-Variante "ProTeXt" auswaehlen.
- Es startet der Adobe-Acrobat-Reader (der natuerlich installiert
sein muss).
- Das angezeigte Dokument lesen, es steuert die restliche Installation.
Dazu muss man an einigen Stellen die angezeigten Links anklicken:
- "Klicken Sie hier, um MiKTEX zu installieren"
"Complete MiKTeX" auswaehlen
"Anyone whi uses thus computer" auswaehlen
"Install missing packages on the fly --> YES"
"Klicken Sie hier, um TEXnicCenter zu installieren"
- "Klicken Sie hier, um Ghostscript zu installieren"
- "Klicken Sie hier, um GSview zu installieren"
- Die LaTeX IDE "TeXnicCenter" starten und die automatisch
gestartete Konfiguration durchfuehren.
Installation von LaTeX unter Linux
==================================
- Benutzen Sie das Software-Installations-Tool Ihrer Distribution und
installieren Sie LaTeX.
Fuer SuSE sind dies zumindest die Pakete "texlive-*".
- Wenn Sie private oder selbstentwickelte Pakete installieren moechten,
legen Sie ein Verzeichnis $(HOME)/tex/textmf an, und installieren Sie
Ihre Pakete untergalkb dieses Verzeichnisses.
Definieren Sie dann (in ~/.bashrc) noch die Umgebungsvariablen:
# Wo werden die diversen Dateien gesucht:
# Ein // am Ende bedeutet: in allen Unterverzeichnissen
# BIBTEX-Style Files (*.bst)
export BSTINPUTS=.//:$HOME/tex/texmf/tex//:/usr/share/texmf//:$BSTINPUTS
# BIBTEX Datenbank(en) (*.bib)
export BIBINPUTS=.//:$HOME/tex/bib//:$BIBINPUTS
# LaTeX Styles und Klassen (*.sty, *.cls)
export TEXINPUTS=.//:$HOME/tex/texmf/tex//:/usr/share/texmf//:$TEXINPUTS
- Wenn Sie EMACS benutzen, installieren Sie das Emacs-Lisp-Paket "auctex".
- Wenn Sie VI (VIM) benutzen, installieren Sie die Paket
vim-plugin-latex und vim-plugin-matchit
- Weitere LaTeX IDE's
- texmaker
- lyx
- kile / kde3-kile
Installation von LaTeX unter Mac OS
===================================
Mactex ist ein Package, das alles beinhaltet was man fuer Latex auf Mac OS
benoetigt...: http://www.tug.org/mactex/
Sonstige Programme
==================
- Erstellung von Vektorgraphiken:
- xfig und transfig (Umwandlung von mit xfig erzeugten Bildern in PNG etc.)
http://www.xfig.org
Linux (via Software-Managment-Tools installierbar)
Microsoft Windows (siehe http://www.xfig.org/tools.html)
- inkscape (SVG-Editor)
http://inkscape.org
Linux (via Software-Managment-Tools installierbar)
Microsoft-Windows (http://inkscape.org/download)
Mac (http://inkscape.org/download)

25
abk.tex Normal file
View File

@@ -0,0 +1,25 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, Datei mit Abkürzungen
%% Author: Prof. Dr. Jürgen Vollmer, vollmer@dhbw-karlsruhe.de
%% $Id: abk.tex,v 1.4 2017/10/06 14:02:03 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter*{Abkürzungsverzeichnis} % chapter*{..} --> keine Nummer, kein "Kapitel"
% Nicht ins Inhaltsverzeichnis
% \addcontentsline{toc}{chapter}{Akürzungsverzeichnis} % Damit das doch ins Inhaltsverzeichnis kommt
% Hier werden die Abkürzungen definiert
\begin{acronym}[DHBW]
% \acro{Name}{Darstellung der Abkürzung}{Langform der Abkürzung}
\acro{Abk}[Abk.]{Abkürzung}
% Folgendes benutzen, wenn der Plural einer Abk. benöigt wird
% \newacroplural{Name}{Darstellung der Abkürzung}{Langform der Abkürzung}
\newacroplural{Abk}[Abk-en]{Abkürzungen}
\acro{H2O}[\ensuremath{H_2O}]{Di-Hydrogen-Monoxid}
% Wenn neicht benutzt, erscheint diese Abk. nicht in der Liste
\acro{NUA}{Not Used Acronym}
\end{acronym}

11
bericht-blx.bib Normal file
View File

@@ -0,0 +1,11 @@
@Comment{$ biblatex control file $}
@Comment{$ biblatex bcf format version 3.10 $}
% Do not modify this file!
%
% This is an auxiliary file used by the 'biblatex' package.
% This file may safely be deleted. It will be recreated as
% required.
@Control{biblatex-control,
options = {3.10:0:0:1:0:1:1:0:0:1:0:1:3:1:3:1:0:0:3:1:79:+:+:nty},
}

41
bericht.bib Normal file
View File

@@ -0,0 +1,41 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, BibTeX
%% Author: Prof. Dr. Jürgen Vollmer, vollmer AT dhbw-karlsruhe.de
%% $Id: bericht.bib,v 1.10 2016/03/16 12:27:42 vollmer draft $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%
%% declararion of abbreviations
%%%%
@STRING{addison = "Addison-Wesley"}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@BOOK{knuth.1984a,
AUTHOR = "Knuth, Donald E.",
TITLE = "The \TeX{}book",
PUBLISHER = addison,
YEAR = 1984
}
@BOOK{lamport.1995a,
AUTHOR = "Lamport, Leslie",
TITLE = "Das \LaTeX\ Handbuch",
PUBLISHER = addison,
YEAR = 1995
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Referenzieren von URL's
@MISC{dante.2010a,
AUTHOR = "Dante",
TITLE = "Webseite der \emph{Deutschsprachige Anwendervereinigung TeX e.V.}",
HOWPUBLISHED = "\url{http://www.dante.de}",
YEAR = 2010,
MONTH = jan
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

BIN
bericht.pdf Normal file

Binary file not shown.

213
bericht.sty Normal file
View File

@@ -0,0 +1,213 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: LaTeX Style für Vorlage für Berichte der DHBW-Karlsruhe
%% Author: Prof. Dr. Jürgen Vollmer, juergen.vollmer@dhbw-karlsruhe.de
%% $Id: bericht.sty,v 1.25 2020/03/13 15:38:13 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% ACHTUNG, wenn man eine eigene Format-Datei benutzt dann werden Änderungen an bericht.sty
%% erst wirksam, wenn die Format-Datei neu erzeugt wurde!!!
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{bericht}[2017/10/06 v1.2]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% needed packages
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[utf8]{inputenc} % UTF8-Codierung
\usepackage{babel} % Sprachanpassungen für generierte Texte wie "Inhaltsverzeichnis" etc
\usepackage[T1]{fontenc}% Interne LaTeX Codierungen
\usepackage[dvipsnames,table]{xcolor} % Extending L A TEXs color facilities
\usepackage[babel, german=guillemets]{csquotes} % Context sensitive quotation facilities.
\usepackage{xspace} % http://www.ctan.org/tex-archive/help/Catalogue/entries/xspace.html
\usepackage{array} % http://www.ctan.org/tex-archive/help/Catalogue/entries/array.html
\usepackage{tabularx} % http://www.ctan.org/tex-archive/help/Catalogue/entries/tabularx.html
\usepackage{eurosym} % \euro
\usepackage{pdfpages} % http://www.ctan.org/tex-archive/help/Catalogue/entries/pdfpages.html
\usepackage{needspace} % http://www.tex.ac.uk/cgi-bin/texfaq2html?label=nopagebrk
\usepackage[bookmarksopen,bookmarksnumbered]{hyperref}
\usepackage{bookmark} % Bookmarks for hyperref
\usepackage{graphicx}
\usepackage[headings]{fullpage}
\usepackage{fancyhdr}
\usepackage{url}
\usepackage{microtype} % http://tug.ctan.org/tex-archive/macros/latex/contrib/microtype/
\usepackage{lmodern} % Computern-Modern Schriftfamilie
\usepackage{amssymb} % Symbole
\usepackage{framed} % Framed or shaded regions that can break across pages.
% http://dante.ctan.org/tex-archive/help/Catalogue/entries/framed.html
% Benutzung siehe erklaerung.tex
\usepackage{wrapfig} % Bilder von textumfliessen lassen
\usepackage[colorinlistoftodos]{todonotes}
% Einfache Verwaltung und Erstellung von TODO's Markierungen
% http://tug.ctan.org/tex-archive/macros/latex/contrib/todonotes/
% wichtige Paket-Optionen: disable
\usepackage{makeidx} % Erstellung eines Indexes
\makeindex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% eigene Macros
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\email}[1]{\href{mailto:#1}{\textless#1\textgreater}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% citation, bibliography, BIBLATEX
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Wer etwas mehr "Kontrolle" über das Aussehen der Referenzen haben möchte, kann
% auch das "biblatex"-Paket benutzen.
\usepackage{etoolbox} % http://dante.ctan.org/tex-archive/help/Catalogue/entries/etoolbox.html
\usepackage[
hyperref=true, % Klickbare Referenzen in der PDF-Datei
backref=true, % In der Literaturref. die Seiten angeben, wo ein \cite dazu steht
bibencoding=inputenc, % s. inputenc-Paket
style=authoryear-comp,
backend=bibtex,
sorting=nty]{biblatex} % http://dante.ctan.org/tex-archive/help/Catalogue/entries/biblatex.html
\renewcommand{\mkbibnamelast}[1]{\textsc{#1}}
% Abstand der einzelnen Einträge in der Literaturangaben
\renewcommand{\bibitemsep}{1ex}
% Welche Klammern soll \parencite{..} benutzen?
\renewcommand{\bibleftparen}{[}
\renewcommand{\bibrightparen}{]}
% biblatex's \cite{..} gibt "normalerweise" keine Klammern um die Referenz aus
% \parencite{..} gibt Klammern aus (die oben definiert sind)
% Damit das "normale" Verhalten andere BibTeX-Stile realisiert wird, d.h. \cite{..}
% gibt Klammen aus, wird folgendes definiert:
% "Merke" ursprünliche Definition unter neuem Namen
\let\citeNoParen\cite
% "Redefiniere" \cite:
\let\cite\parencite
% Meine speziellen \cite-Kommandos:
% Ausgabe des Untertitels (SUBTITLE) Feldes einer Referenz
\DeclareCiteCommand{\citesubtitle}
{\boolfalse{citetracker}%
\boolfalse{pagetracker}%
\usebibmacro{prenote}}
{\indexfield{indextitle}%
\printfield[citetitle]{subtitle}}
{\multicitedelim}
{\usebibmacro{postnote}}
% Ausgabe des Titels (TITLE) Feldes und der Referenz
\DeclareCiteCommand{\citetitleref}
{\booltrue{citetracker}%
\booltrue{pagetracker}%
\usebibmacro{prenote}}
{\indexfield{indextitle}%
\printfield[citetitle]{title} \cite{\thefield{entrykey}}}
{\multicitedelim}
{\usebibmacro{postnote}}
% wie citetitleref, nur als Fussnote
\DeclareCiteCommand{\citetitlerefFootnote}
{}
{\footnote{\citetitleref{\thefield{entrykey}}}}
{}
{}
% Ausgabe der URL im HOWPUBLISHED Feld
% Referenzieren von URL's, Format in der *.bib-Datei
%@MISC{key,
% AUTHOR = "....",
% TITLE = "Webseite....",
% HOWPUBLISHED = "\url{http://www.domain.tld}",
% YEAR = YYYY, % Jahr der Einsichtname, YYYY = Jahreszahl 4 Stellog
% MONTH = ABC % Monat der Einsichtnahme (jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov. dec
%}
\DeclareCiteCommand{\citeurl}
{\booltrue{citetracker}%
\booltrue{pagetracker}%
\usebibmacro{prenote}}
{\indexfield{indextitle}%
\printfield[citetitle]{howpublished}}
{\multicitedelim}
{\usebibmacro{postnote}}
% Ausgabe der URL im HOWPUBLISHED Feld und Referenz
\DeclareCiteCommand{\citeurlref}
{\booltrue{citetracker}%
\booltrue{pagetracker}%
\usebibmacro{prenote}}
{\indexfield{indextitle}%
\printfield[citetitle]{howpublished} \cite{\thefield{entrykey}}}
{\multicitedelim}
{\usebibmacro{postnote}}
% Augabe: Vorname Nachname des Autors
\DeclareCiteCommand{\citefullauthor}
{\booltrue{citetracker}%
\booltrue{pagetracker}%
\usebibmacro{prenote}}
{\indexfield{indextitle}%
\textsc{\printnames[byeditor]{author}}}
{\multicitedelim}
{\usebibmacro{postnote}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Programmlistings setzen
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{listings} % http://www.ctan.org/tex-archive/macros/latex/contrib/listings/
% Wie sollen die Überschriften benannt werden:
\renewcommand{\lstlistingname}{Algorithmus}
% Wie die Liste der Listings, s. \lstlistoflistings in bericht.tex
\renewcommand{\lstlistlistingname}{Liste der Algorithmen}
% So kann man einen Stil für alle Algorithmen definieren
\lstdefinestyle{algoBericht}{
numbers=left, % Zeilennummern einfügen
numberstyle=\tiny, % wie werden sie gesetzt
numbersep=5pt, % Abstand der Nummern zum Text
numberblanklines=false, % bei Leerzeilen keine Nummer ausgeben (aber zählen)
basicstyle=\sffamily\small, % Wie soll der Algorithmus gesetzt werden
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Abkürzungen, http://www.ctan.org/tex-archive/macros/latex/contrib/acronym/
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[printonlyused,withpage]{acronym}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Formelverzeichnis, Dank an Andy Nöltner <ANoeltner@lstelcom.com>
% Leider versursacht float zusammen mit Hyperref Warnungen
% siehe http://www.tex.ac.uk/cgi-bin/texfaq2html?label=hyperdupdest
% Wenn also das Formelverzeichnis nicht benötigt, dann das folgende
% auskommentieren
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{float}
\newfloat{eq}{H}{for}[chapter]
\newcommand{\forname}{Formelverzeichnis}
\newcommand{\listofequations}{\listof{eq}{\forname}}
\newcommand{\eqlabel}[2]{
\label{#1}
\addcontentsline{for}{eq}{(\ref{#1}) #2}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Definitionen mit Ausgabe im Index
% gibt #2 aus und fügt #1 bzw. #2 (wenn #1 nicht angegeben) in den Index ein
\newcommand{\Def}[2][]{%
\def\OPTARG{#1}%
\def\EMPTY{}%
\ifx\OPTARG\EMPTY\index{#2}\else\index{#1}\fi%
\textbf{#2}\xspace%
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%
%% End of file `bericht.sty'.

194
bericht.tex Normal file
View File

@@ -0,0 +1,194 @@
%&bericht
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe
%% Author: Prof. Dr. Jürgen Vollmer, juergen.vollmer@dhbw-karlsruhe.de
%% $Id: bericht.tex,v 1.25 2020/03/13 15:07:45 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\documentclass[
ngerman % neue deutsche Rechtschreibung
,a4paper % Papiergrösse
% ,twoside % Zweiseitiger Druck (rechts/links)
% ,10pt % Schriftgrösse
,11pt
% ,12pt
,pdftex
% ,disable % Todo-Markierungen auschalten
]{report}
% Bitte die Codierung Ihrer Dateien auswählen:
% \usepackage[latin1]{inputenc} % Für UNIX mit ISO-LATIN-codierten Dateien
% \usepackage[applemac]{inputenc} % Für Apple Mac
% \usepackage[ansinew]{inputenc} % Für Microsoft Windows
\usepackage[utf8]{inputenc} % UTF-8 codierte Dateien
% Dieses Dokument ist unter Unix erstellt, daher
% wird diese Input-Codierung benutzt.
\usepackage{bericht}
%% ACHTUNG, wenn man eine eigene Formatdatei (bericht.fmt) benutzt, werden Änderungen an bericht.sty
%% erst wirksam, wenn die Format-Datei neu erzeugt wurde!!!
%% Genauer alle Änderungen, die textuell vor der nächsten Zeile ".... endofdump...." stehen
%% werden erst wirksam, wenn die Formatdatei neu erzeugt wurde
\csname endofdump\endcsname
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Angaben zur Arbeit
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\Autor}{Leon Louis Schoch}
\newcommand{\MatrikelNummer}{1015290}
\newcommand{\Kursbezeichnung}{TINF21B5}
\newcommand{\FirmenName}{Anexia Deutschland GmbH}
\newcommand{\FirmenStadt}{Karlsruhe}
\newcommand{\FirmenLogoDeckblatt}{\includegraphics[width=3cm]{images/logos/Anexia_Logo_CMYK}}
% Falls es kein Firmenlogo gibt:
% \newcommand{\FirmenLogoDeckblatt}{}
\newcommand{\BetreuerFirma}{Stephan Peijnik-Steinwender (B.Sc.)}
\newcommand{\BetreuerDHBW}{Prof. Dr. Markus Strand}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Wird auf dem Deckblatt und in der Erklärung benutzt:
\newcommand{\Was}{Projekt T2-2000}
%\newcommand{\Was}{Projektrarbeit}
%\newcommand{\Was}{Studienarbeit}
%\newcommand{\Was}{Bachleorarbeit}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\Titel}{Route Injection}
\newcommand{\AbgabeDatum}{1. April 2090}
\newcommand{\Dauer}{20 Wochen}
% \newcommand{\Abschluss}{Bachelor of Engineering}
\newcommand{\Abschluss}{Bachelor of Science}
\newcommand{\Studiengang}{Informatik / Informationstechnik}
% \newcommand{\Studiengang}{Informatik / Angewandte Informatik}
\hypersetup{%%
pdfauthor={\Autor},
pdftitle={\Titel},
pdfsubject={\Was}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Wenn \includeonly{..} benutzt wird, werden nur diese Kaptitel ausgegeben.
\includeonly{
abk
,kapitel1
,kapitel2
,changelog
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Benutzt man das "biblatex"-Paket, dann muß das hier stehen:
% siehe auch die mit BIBLATEX markierten Zeilen in bericht.sty
\bibliography{bericht}
\begin{document}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{titlepage}
\begin{center}
\vspace*{-2cm}
\FirmenLogoDeckblatt\hfill\includegraphics[width=4cm]{dhbw-logo}\\[2cm]
{\Huge \Titel}\\[1cm]
{\Huge\scshape \Was}\\[1cm]
{\large für die Prüfung zum}\\[0.5cm]
{\Large \Abschluss}\\[0.5cm]
{\large des Studienganges \Studiengang}\\[0.5cm]
{\large an der}\\[0.5cm]
{\large Dualen Hochschule Baden-Württemberg Karlsruhe}\\[0.5cm]
{\large von}\\[0.5cm]
{\large\bfseries \Autor}\\[1cm]
{\large Abgabedatum \AbgabeDatum}
\vfill
\end{center}
\begin{tabular}{l@{\hspace{2cm}}l}
Bearbeitungszeitraum & \Dauer \\
Matrikelnummer & \MatrikelNummer \\
Kurs & \Kursbezeichnung \\
Ausbildungsfirma & \FirmenName \\
& \FirmenStadt \\
Betreuer der Ausbildungsfirma & \BetreuerFirma \\
Gutachter der Studienakademie & \BetreuerDHBW \\
\end{tabular}
\end{titlepage}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\input{erklaerung.tex}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{abstract}
Dieses \LaTeX-Dokument kann als Vorlage für einen Praxis- oder Projektbericht, eine Studien- oder
Bachelorarbeit dienen.
Zusammengestellt von Prof.\,Dr.\,Jürgen Vollmer \email{juergen.vollmer@dhbw-karlsruhe.de}\\
\url{https://www.karlsruhe.dhbw.de}. Die jeweils aktuellste Version dieses \LaTeX-Paketes ist immer
auf der \emph{FAQ-Seite} des Studiengangs Informatik zu finden:
\url{https://www.karlsruhe.dhbw.de/inf/studienverlauf-organisatorisches.html} $\to$ \emph{Formulare und Vorlagen}.
\centering Stand \verb+$Date: 2020/03/13 15:07:45 $+
\end{abstract}
\newpage
\tableofcontents % Inhaltsverzeichnis hier ausgeben
\listoffigures % Liste der Abbildungen
\listoftables % Liste der Tabellen
\lstlistoflistings % Liste der Listings
\listofequations % Liste der Formeln
% Jetzt kommt der "eigentliche" Text
\include{abk} % Abkürzungsverzeichnis
\include{kapitel1}
\include{kapitel2}
% Ab hier beginnt der Anhang
\appendix
\addcontentsline{toc}{chapter}{Anhang}
\addcontentsline{toc}{chapter}{Index}
\printindex
\addcontentsline{toc}{chapter}{Literaturverzeichnis}
% Haben Sie das "biblatex"-Paket nicht installiert, benutzen Sie folgendes:
% Ohne das "biblatex"-Paket (s. bericht.sty) produziert folgendes
% "deutsche" Zitate in Literaturverzeichnissen gemaß der Norm DIN 1505,
% Teil 2 vom Jan. 1984.
% Die Zitatmarken werden alphabetisch nach Verfassern
% sortiert und sind durch abgekürzte Verfasserbuchstaben plus
% Erscheinungsjahr in eckigen Klammern gekennzeichnet.
% \bibliographystyle{alphadin}
% \bibliography{bericht}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
% BIBLATEX
% Benutzt man das "biblatex"-Paket, muß man folgendes schreiben:
\def\refname{Literaturverzeichnis}
\printbibliography
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%5
\include{changelog}
\newpage
\addcontentsline{toc}{chapter}{Liste der ToDo's}
\listoftodos[Liste der ToDo's]
\end{document}

22
changelog.tex Normal file
View File

@@ -0,0 +1,22 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, Änderungshistorie
%% Author: Prof. Dr. Jürgen Vollmer, vollmer@dhbw-karlsruhe.de
%% $Id: changelog.tex,v 1.16 2020/03/13 15:12:39 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter*{Änderungen}
\begin{description}
\item[2020/03/13] Tippfehler korrigiert\\
aktuelle Formulierungen aus der Prüfungsordnung Technik übernommen\\
Formatdatei erklärt
\item[2017/10/06] Anpassung an neuer Versionen diverse Pakete.
\item[2016/03/16] Auf UTF-8 umgestellt, Indices.
\item[2010/04/12] ToDo-Markierungen mit dem \verb+\todo+-Kommando.
\item[2010/01/27] Anhang (\texttt{appendix}), Selbständigkeits-Erklärung, \texttt{framed}-Paket.
\item[2010/01/21] Abkürzungen (\texttt{acronym}), \texttt{table} und \texttt{tabular} benutzt,
unübliche Pakete beigelegt.
\item[2010/01/18] Code-Listings (\texttt{listings}), Literaturreferenzen \texttt{biblatex})
\item[2010/01/11] Initiale Version.
\end{description}

BIN
dhbw-logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

48
erklaerung.tex Normal file
View File

@@ -0,0 +1,48 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, Erklärung
%% Author: Prof. Dr. Jürgen Vollmer, vollmer@dhbw-karlsruhe.de
%% $Id: erklaerung.tex,v 1.11 2020/03/13 14:24:42 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% In Bachelorarbeiten muss eine schriftliche Erklärung abgegeben werden.
% Hierin bestätigen die Studierenden, dass die Bachelorarbeit, etc.
% selbständig verfasst und sämtliche Quellen und Hilfsmittel angegeben sind. Diese Erklärung
% bildet das zweite Blatt der Arbeit. Der Text dieser Erklärung muss auf einer separaten Seite
% wie unten angegeben lauten.
\newpage
\thispagestyle{empty}
\begin{framed}
\begin{center}
\Large\bfseries Erklärung
\end{center}
\medskip
\noindent
% siehe §5(3) der \enquote{Studien- und Prüfungsordnung DHBW Technik} vom 29.\,9.\,2017 und Anhang 1.1.13
Ich versichere hiermit, dass ich meine \Was mit dem Thema:
\enquote{\Titel}
selbstständig verfasst und keine anderen als die angegebenen Quellen und Hilfsmittel benutzt habe. Ich versichere zudem, dass die eingereichte elektronische Fassung mit der gedruckten Fassung übereinstimmt.
\vspace{3cm}
\noindent
\underline{\hspace{4cm}}\hfill\underline{\hspace{6cm}}\\
Ort~~~~~Datum\hfill Unterschrift\hspace{4cm}
\end{framed}
\vfill
\emph{Sofern vom Dualen Partner ein Sperrvermerk gewünscht wird, ist folgende Formulierung
zu verwenden:}
\begin{framed}
\begin{center}
\Large\bfseries Sperrvermerk
\end{center}
\medskip
\noindent
Der Inhalt dieser Arbeit darf weder als Ganzes noch in Auszügen Personen
außerhalb des Prüfungsprozesses und des Evaluationsverfahrens zugänglich gemacht
werden, sofern keine anderslautende Genehmigung vom Dualen Partner vorliegt.
\end{framed}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

BIN
images/logos/Anexia_Logo_CMYK.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

313
kapitel1.tex Normal file
View File

@@ -0,0 +1,313 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, Ein Kapitel
%% Author: Prof. Dr. Jürgen Vollmer, vollmer@dhbw-karlsruhe.de
%% $Id: kapitel1.tex,v 1.24 2020/03/13 16:02:34 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Einleitung}
\section{Dateien}
Diese Vorlage umfasst folgende Dateien:
\begin{description}
\item[bericht.tex] Die Haupt-\TeX-Datei. Hier werden die Einstellungen für das
Deckblatt vorgenommen.
\item[bericht.sty] Die benötigten \LaTeX-Pakete werden hier aufgelistet. Eigene Macros definiert.
\item[bericht.bib] Die Bib\TeX\ "`Datenbank"' für die Literaturreferenzen.
\item[abk.tex] \LaTeX-Datei, welche Abkürzungen definiert.
\item[kapitel1.tex] \LaTeX-Datei für das 1. Kapitel.
\item[kapitel2.tex] \LaTeX-Datei für das 2. Kapitel.
\item[dhbw-logo.png] Das Logo der DHBW-Karlsruhe.
\item[lowe.png] Das \LaTeX-Maskottchen.
\item[Makefile] Zum Erzeugen der PDF-Ausgabe.
\item[Pakete] Das Verzeichnis enthält einige Pakete, die u.\,U.\,unter \emph{Unix} nicht installiert
sind. Wenn \LaTeX\ also darüber beklagt, daß Pakete fehlen, folgen Sie den Installationsanweisungen
der Pakete. Prüfen Sie, ob es neuere Versionen der Pakte gibt. In der Datei
\texttt{bericht.sty} sind entsprechende Links auf die Quellen im Internet angegeben.
Wenn Sie unter \emph{Microsoft Windows} bei der Installation
\enquote{Install missing packages on the fly $\longrightarrow$ YES} ausgewählt haben,
werden fehlende Pakete automatisch installiert.
\item[README.txt] Siehe Listing~\ref{fig-readme}.
\end{description}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Erzeugen der PDF-Dateien}
\subsection{Unix + Kommandozeile}
Die Programmaufrufe zum Erzeugen der \Def{PDF-Datei} unter \emph{Unix}
sind im \texttt{Makefile} angegeben. Im Wsentlichen ruft man in der Konsole das Kommando
\texttt{pdflatex bericht}. Damit alle Referenzen innerhalb des Textes, die Seitennummern,
die Literaturreferenzen etc.\,korrekt ausgegeben werden, muss man \LaTeX mindestens dreimal hintereinander aufrufen.
\begin{verbatim}
pdflatex bericht
bibtex bericht
makeindex -s bericht.ist bericht
pdflatex bericht
pdflatex bericht
\end{verbatim}
Dieser vollständgige Zyklus ist aber für's \enquote{Probelesen} nicht nötig.
\texttt{bibtex} erzeugt die Lieteraturreferenzen, \texttt{makeindex} erstellt den Index.
\subsection{Andere}
Unter \emph{Microsoft Windows} öffnen Sie die Datei \emph{bericht.tex} im \emph{TexnicCenter}.
In vielen Betriebsystemen gibt es auch graphische Oberflächen zur Erstellung von Texten mit \LaTeX,
diese erzeugen dann die PDF-Dateien -- ebenfalls durch Aufruf eines entsprechenden
Konsolenprogrammes, allerdings \enquote{unsichtbar} für den Benutzer.
\subsection{Geht's nicht etwas fixer? Eigene Formatdatei}
Das Einlesen aller eingebundenen Pakete pro Aufruf von \texttt{pdflatex} kann mitunter
\enquote{etwas dauern}. Dies lässt sich beschleunigen, indem man eine eigene \enquote{Formatdatei}
\index{Formatdatei} \texttt{bericht.fmt} erzeugt, diese enthält ein vorkomplierte \enquote{Version}
der Pakete. Damit \texttt{pdflatex} diese vorkompilierte Datei benutzt, muss in der ersten Zeile der
\texttt{bericht.tex} Datei folgende Zeile stehen:
\begin{verbatim}
%&bericht
\end{verbatim}
gefolgt von einer Leerzeile. Existiert die Datei \texttt{bericht.fmt} nicht, werden die Pakete
\enquote{wie üblich} einzeln eingebunden.
Damit \texttt{pdflatex} \enquote{weiss} was alles vorübersetzt werden soll, muss in
\texttt{bericht.tex} folgende Zeile stehen
\begin{verbatim}
\csname endofdump\endcsname
\end{verbatim}
ACHTUNG, wenn man eine eigene Formatdatei benutzt, werden Änderungen an \texttt{bericht.sty}
erst wirksam, wenn die Format-Datei neu erzeugt wurde!
Genauer alle Änderungen, die textuell vor der Zeile \texttt{$\dots$ endofdump $\dots$} stehen,
werden erst wirksam, wenn die Formatdatei neu erzeugt wurde
Das Kommando zum Erzeugen der Formatdatei lautet:
\begin{verbatim}
pdflatex -ini -jobname=bericht "&pdflatex" mylatexformat.ltx bericht.tex
\end{verbatim}
Weitere Infos finden Sie auf den hier\footnote{
\url{https://tex.stackexchange.com/questions/79493/ultrafast-pdflatex-with-precompiling} und\\
\url{https://ctan.org/pkg/mylatexformat}}.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Einfügen von Bildern und Querverweise im Text}
\index{Bilder}
Abb.~\ref{fig-loewe} auf Seite~\pageref{fig-loewe} zeigt das \LaTeX-Maskottchen.
\begin{figure}[htbp]
\centering
\fbox{\includegraphics[height=0.3\textheight,angle=270]{lion}}
\caption{\label{fig-loewe}Der \LaTeX-Löwe}
\end{figure}
Die Benutzung des \texttt{varioref}-Paketes macht das Benutzen von Referenzen einfacher.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Literaturreferenzen}
\LaTeX\ \cite{lamport.1995a} basiert auf \TeX \cite{knuth.1984a}.
Die Literaturreferenzen werden von Bib\TeX verwaltet.
Hier ein Beispiel des Zitierens von Web-Seiten
\cite{dante.2010a} ist der Anlaufpunkt für \LaTeX\ in Deutschland.
URLs zitieren kann man so \cite{dante.2010a} machen.
\section{Literaturreferenzen mit dem Bib\LaTeX-Paket}
\index{Literaturreferenz}
Das Bib\LaTeX-Paket erlaubt eine deutlich komfortableren Zugriff auf Einträge der
BiB\TeX-"`Datenbank"' als die einfachen Bib\TeX-Stile. Allerdings ist das \texttt{bibtex}-Paket
nicht standard mässig installiert. Es muß zusammen mit dem \texttt{etoolbox}-Paket installiert
werden, s.\
\url{http://dante.ctan.org/tex-archive/help/Catalogue/entries/etoolbox.html} und\\
\url{http://dante.ctan.org/tex-archive/help/Catalogue/entries/biblatex.html}.
% Nur mit BIBLATEX
Ein Beispiel was man mit Bib\LaTeX\ machen kann (siehe auch \texttt{bericht.s}).
\citefullauthor{knuth.1984a} hat in seinem wegeweisenden Buch
\citetitle{knuth.1984a} aus dem Jahr \citeyear{knuth.1984a}
die Grundlagen von \TeX\ gelegt.
% nur mit BIBLATEX:
Nur die URL angeben: \citeurl{dante.2010a} oder URL mit Referenz:
\citeurlref{dante.2010a}, oder eben "`einfach"' wie oben gezeigt.
Tabelle~\ref{bibtex-macros} zeigt die wichtigsten Macros.
\begin{table}
\begin{center}
\small
\begin{tabular}{|l|l|l|}\hline
\multicolumn{1}{|c}{Macro} & \multicolumn{1}{|c}{Bedeutung} & \multicolumn{1}{|c|}{Beispiel} \\\hline\hline
\verb+\cite{referenz}+ & Ausgabe der Referenz & \cite{knuth.1984a} \\
\verb+\citetitle{referenz}+ & Ausgabe der Titels & \citetitle{knuth.1984a} \\
\verb+\citefullauthor{referenz}+ & Ausgabe der Autors & \citefullauthor{knuth.1984a} \\
\verb+\citeyear{referenz}+ & Ausgabe der Jahres & \citeyear{knuth.1984a} \\\hline
\multicolumn{3}{|c|}{Internet-Resourcen referenezieren} \\\hline
\verb+\citeurl{referenz}+ & Referenz auf eine URL & \citeurl{dante.2010a} \\
\verb+\citeurlref{referenz}+ & URL mit Referenz & \citeurlref{dante.2010a} \\\hline
\end{tabular}
\end{center}
\caption{\label{bibtex-macros}Macros für die Literaturrefrenzen}
\end{table}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Quellcodelistings}
\Def[Quellcodelisting]{Quellcodelistings} können mit dem \texttt{listings}-Paket gesetzt werden.
Es können Dateien direkt inkludiert werden, wie das \texttt{Makefile} aus
Listing~\ref{algo-makefile}, oder in der \LaTeX-Datei angegeben werden (siehe
Listing~\ref{algo-quicksort}).
\newpage
% Inkludiere eine Programmdatei
\lstinputlisting[language=make, % Welche Sprache, see listings-Dokumentation
style=algoBericht, % Benutze oben definierten Stil
label={algo-makefile}, % Label für \ref{..}
basicstyle=\tiny\sffamily,
captionpos=b,
caption={Das Makefile}]{Makefile.} % Überschrift, Dateiname der zu inkludieren Datei
% ACHTUNG: ProTeXT / Windows hat hier ein Bug: "Makefile" ohne Punkt am Ende wird nicht gefunden.
% ($%&/ DOS-Legacy :-(
% Daher muss für Linux eine Datei "Makefile." (mit Punkt am Ende) als Symlink auf "Makefile"
% angelegt werden und hier "Makefile." angegeben werden. Das ist nur notwendig,
% wenn der Dateiname keinen Suffix hat....
% Setze Programm direkt
\begin{lstlisting}[language=c,
frame=single, % Ein Rahmen um den Code
framexleftmargin=15pt, % Rahmen link von den Zahlen
style=algoBericht,
label={algo-quicksort},
captionpos=b, % Caption unter den Code setzen
caption={quicksort in C}]
void quicksort (int *a, int links, int rechts)
/* sortiert die Elemente a[links] .. a[rechts] */
{
/* partitioniere a[links] .. a[rechts] */
int m = (links + rechts) / 2 ;
int x = a[m];
int l = links, r = rechts;
while (l <= r) {
while (a[l] < x) l++;
printf ("von links: l=%d\n", l);
while (a[r] > x) r--;
printf ("von rechts: r=%d\n", r);
if (l <= r) {
int t = a[l]; a[l] = a[r]; a[r] = t;
/* a[l] <-> a[r] */
l++; r--; /* "verschiebe Pfeile" */
}
}
/* Sortiere linken und rechten Teilarray */
if (links < r) quicksort (a, links, r);
if (l < rechts) quicksort (a, l, rechts);
}
\end{lstlisting}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Benutzen von Abkürzungen}
\acp{Abk} % Plural der Abkürzung
werden mit dem \verb+acronym+-Paket veraltet.
Jede
\ac{Abk} % Singular
wird in der Datei \texttt{abk.tex} definiert.
Eine \ac{Abk} wird mit dem \verb+\ac{Abk}+ Macro benutzt. Beim ersten Auftreten
wird der Langtext und in Klammern die zugehörige \Def{Abkürzung} ausgegeben. Bei allen
folgenden Benutzungen wird nur die Abkürzung ausgegeben.
Tabelle~\ref{acronym-macros} zeigt die wichtigsten Macros.
\begin{table}[ht]
\begin{center}
\begin{tabular}{|ll|}\hline
\verb+\acs{NAME}+ & immer die Kurzform: \acs{Abk} \\
\verb+\acl{NAME}+ & immer die Langform: \acl{Abk} \\
\verb+\acp{NAME}+ & Kurzform des Plurals: \acp{Abk} \\
\verb+\aclp{NAME}+ & immer Langform des Plurals: \aclp{Abk} \\\hline
\end{tabular}
\end{center}
\caption{\label{acronym-macros}Macros für Abkürzungen}
\end{table}
Ein Beispiel, welches zeigt, daß auch Formeln als \acp{Abk} benutzt werden können:\\
\ac{H2O} ist ein wahrlich gefährlicher Stoff. \ac{H2O} verursacht in gasförmigem
Zustand schwerste Verbrennungen der menschlichen Haut und der Atemorgane.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{TODO Markierungen}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Das Paket\todo{Was waren nochmal Pakete?} \texttt{todonotes} stellt das Makro\todo{Was sind \LaTeX\ Macros?}
\verb+\todo{...text....}+ zur Verfügung.
Das Macro \verb+\missingfigure{Da fehlt noch ein Bild}+ erzeugt
\missingfigure{Da fehlt noch ein Bild}.
\todo[color=red,inline]{Das Handbuch \texttt{todonotes} lesen!}
Am Ende des Dokuments wird die Liste aller ToDo's mit \verb+\listoftodos+ ausgegeben\\
(siehe \texttt{bericht.tex}).
\noindent
Das Paket kennt folgende Optionen:
\begin{description}
\item[\texttt{disable}] ToDo's nicht anzeigen
\end{description}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Indices}
Mit dem Paket \verb+makeinx+ und dem Macro \verb+\index+ können leicht Indices erstellt werden.
Das Macro \verb+\Def{..}+ kann für definitinen benutzt werden.
z.\,B.\, Mit demm optionalen Argument wie in \verb+\Def[Definition]{Definitionen}+
(\Def[Definition]{Definitionen}) können verschiedene Schreibweisen im text und Index angegeben
werden.
Weitere interessante Möglichkeiten sind:
\begin{itemize}
\item \verb+\index{Punkt!Unterpunkt}+ \index{Punkt!Unterpunkt}
\item \verb+\index{Verweis|see{Punkt}}+ \index{Verweis|see{Punkt}}
\end{itemize}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Sachen, die mir Anwender geschickt haben}
\subsection{Erstellen eines Formelverzeichnises}
\textsc{Andy Nöltner} \url{ANoeltner@lstelcom.com}
Gleichung~\ref{eq-hx-angle} ist eine schöne Gleichung, die im \emph{Formelverzeichnis}
erscheint.
\begin{equation}
hx = x \cdot \tan \alpha
\eqlabel{eq-hx-angle}{Berechnung Höhenunterschied Tx zu Rx}
\end{equation}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\section{Installationsanleitung}
\hrule
%% ACHTUNG: Es macht Probleme, wenn die inkludierte Datei UTF8 Kodiert ist
%% ggf. hilft: https://www.ctan.org/pkg/listingsutf8
\lstinputlisting[
basicstyle=\small\rmfamily,
fontadjust,
firstline=6,
captionpos=t,
label={fig-readme},
caption={Installationsanleitung unter Microsoft Windows und Linux (\texttt{README.txt})}
]{README.txt}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\endinput
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

49
kapitel2.tex Normal file
View File

@@ -0,0 +1,49 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Descr: Vorlage für Berichte der DHBW-Karlsruhe, Ein Kapitel
%% Author: Prof. Dr. Jürgen Vollmer, vollmer@dhbw-karlsruhe.de
%% $Id: kapitel2.tex,v 1.5 2017/10/06 14:02:51 vollmer Exp $
%% -*- coding: utf-8 -*-
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\chapter{Grundlagen}
\section{abc}
abc abc abc
abc abc abc
abc abc abc
abc abc abc
abc abc abc
\section{Lorem ipsum}
\begin{wrapfigure}{l}{0.4\textwidth}
\centering
\fbox{\includegraphics[width=0.25\textwidth,angle=270]{lion}}
\end{wrapfigure}
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. 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.
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.
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.
Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. 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 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. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. 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.
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. 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.
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. 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.
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.
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.
Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim
placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam
nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim
veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

BIN
latex-vorlage-bericht.pdf Normal file

Binary file not shown.

BIN
lion.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 46 KiB

70
quicksort.c Normal file
View File

@@ -0,0 +1,70 @@
# include <stdio.h>
# define PRINT(X) \
{int i; \
printf ("%-10s", X); \
for (i = 0; i < 4; i++) printf (" %2d ", a[i]); \
printf ("\n"); \
}
void quicksort (int *a, int links, int rechts)
/* sortiert die Elemente a[links] .. a[rechts] */
{
/* partitioniere a[links] .. a[rechts] */
int m = (links + rechts) / 2 ;
int x = a[m];
int l = links, r = rechts;
PRINT ("\nvor part");
printf ("l=%d m=%d x=%d, r=%d\n", l, m, x, r);
while (l <= r) {
while (a[l] < x) l++;
printf ("von links: l=%d\n", l);
while (a[r] > x) r--;
printf ("von rechts: r=%d\n", r);
if (l <= r) {
int t = a[l]; a[l] = a[r]; a[r] = t;
/* a[l] <-> a[r] */
l++; r--; /* "verschiebe Pfeile" */
PRINT ("nach swap");
}
}
printf ("l=%d m=%d x=%d, r=%d\n", l, m, x, r);
PRINT ("nach part");
/* Sortiere linken und rechten Teilarray */
if (links < r) quicksort (a, links, r);
if (l < rechts) quicksort (a, l, rechts);
}
int main (int argc, char *argv[])
{
int a[5] = {58,91,28,80,54};
PRINT ("start");
/*
int l = 0, r = 1;
int m = 2;
int x = a[m];
int i;
while (l <= r) {
while (a[l] < x) l++;
printf ("von links: l=%d\n", l);
while (a[r] > x) r--;
printf ("von rechts: l=%d\n", l);
if (l <= r) {
int t = a[l]; a[l] = a[r]; a[r] = t;
l++; r--;
}
}
*/
quicksort (a, 0, 4);
PRINT ("res");
return 0;
}