From 8c75dc44b438ceefba2bc84f374d9de29fd4b025 Mon Sep 17 00:00:00 2001 From: Jan Grewe Date: Wed, 7 Oct 2015 09:06:55 +0200 Subject: [PATCH] [exercise 3] switch to exam package --- .../exercises/boolean_logical_indexing.tex | 130 +++++++++--------- 1 file changed, 62 insertions(+), 68 deletions(-) diff --git a/programming/exercises/boolean_logical_indexing.tex b/programming/exercises/boolean_logical_indexing.tex index ea40638..62cd9db 100644 --- a/programming/exercises/boolean_logical_indexing.tex +++ b/programming/exercises/boolean_logical_indexing.tex @@ -1,8 +1,8 @@ -\documentclass[12pt,a4paper,pdftex]{article} +\documentclass[12pt,a4paper,pdftex]{exam} +\usepackage[german]{babel} \usepackage{natbib} \usepackage{graphicx} -\usepackage[margin=1.5in]{geometry} \usepackage[small]{caption} \usepackage{sidecap} \usepackage{pslatex} @@ -12,35 +12,29 @@ \usepackage[breaklinks=true,bookmarks=true,bookmarksopen=true,pdfpagemode=UseNone,pdfstartview=FitH,colorlinks=true,citecolor=blue]{hyperref} %%%%% text size %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% letter : 8.5 x 11 in -\setlength{\headheight}{5mm} % default ~5mm -\setlength{\headsep}{8mm} % default ~10mm -\setlength{\topmargin}{15mm} % default ~8mm -\setlength{\textheight}{23cm} +\usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry} +\pagestyle{headandfoot} \header{{\bfseries\large \"Ubung + 3}}{{\bfseries\large Boolesche Ausdr\"ucke, logisches + Indizieren}}{{\bfseries\large 13. Oktober, 2015}} +\firstpagefooter{Dr. Jan Grewe}{Phone: 29 74588}{Email: + jan.grewe@uni-tuebingen.de} \runningfooter{}{\thepage}{} -\setlength{\oddsidemargin}{2.5cm} -\setlength{\evensidemargin}{2.5cm} -\setlength{\textwidth}{16cm} - -\setlength{\voffset}{-1in} -\setlength{\hoffset}{-1in} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\setlength{\baselineskip}{15pt} +\setlength{\parindent}{0.0cm} +\setlength{\parskip}{0.3cm} \renewcommand{\baselinestretch}{1.15} -\makeatletter -\setlength{\@fptop}{0pt} -\setlength{\@fpsep}{5ex} -\makeatother -%%%%% title %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\title{\bf Einf\"uhrung in die wissenschaftliche Datenverarbeitung\\ - --- \"Ubungen III: ---\\ Boolesche Ausdr\"ucke und logisches Indizieren} -\author{Jan Grewe, Jan Benda} -\date{\noindent\parbox{\textwidth}{\normalsize\itshape Eberhardt Karls Universit\"at - T\"ubingen, Abt. Neuroethologie }} +\newcommand{\code}[1]{\texttt{#1}} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{document} -\maketitle + +\vspace*{-6.5ex} +\begin{center} + \textbf{\Large Einf\"uhrung in die wissenschaftliche Datenverarbeitung}\\[1ex] + {\large Jan Grewe, Jan Benda}\\[-3ex] + Abteilung Neuroethologie \hfill --- \hfill Institut f\"ur Neurobiologie \hfill --- \hfill \includegraphics[width=0.28\textwidth]{UT_WBMW_Black_RGB} \\ +\end{center} Die folgenden Aufgaben dienen der \"Ubung und Selbstkontrolle und sollten eigenst\"andig bearbeitet und gel\"ost werden. Die L\"osung @@ -48,67 +42,67 @@ soll in Form eines einzelnen Skriptes (m-files) i.d.R. am gleichen Tag mir zugeschickt werden (jan.grewe@uni-tuebingen.de). Jede Aufgabe sollte in einer eigenen ``Zelle'' gel\"ost sein. Die Zellen \textbf{m\"ussen} unabh\"angig voneinander ausf\"uhrbar sein. Das -Skript sollte nach dem Muster: ``variablen\_datentypen\_{nachname}.m'' +Skript sollte nach dem Muster: ``variablen\_datentypen\_\{nachname\}.m'' benannt werden (z.B. variablen\_datentypen\_mueller.m). -\section{Aufgaben} - -\subsection{Boolesche Ausdr\"ucke} +\section{Boolesche Ausdr\"ucke} -\begin{enumerate} -\item Gegeben sind zwei Vektoren \verb+x = [1 5 2 8 9 0 1]+ und +\begin{questions} + \question Gegeben sind zwei Vektoren \verb+x = [1 5 2 8 9 0 1]+ und \verb+y = [5 2 2 6 0 0 2]+. F\"uhre aus und erkl\"are. - \begin{enumerate} - \item \verb+x > y+ - \item \verb+y < x+ - \item \verb+x == y+ - \item \verb+x ~= y+ - \item \verb+x & ~y+ - \item \verb+x | y+ - \end{enumerate} -\item Finde heraus, was die Funktionen \verb+bitand+ und \verb+bitor+ machen. - \begin{enumerate} - \item F\"uhre aus und erkl\"are: \verb+bitand(10, 8)+ - \item F\"uhre aus und erkl\"are: \verb+bitor(10, 8)+ - \end{enumerate} + \begin{parts} + \part \verb+x > y+ + \part \verb+y < x+ + \part \verb+x == y+ + \part \verb+x ~= y+ + \part \verb+x & ~y+ + \part \verb+x | y+ + \end{parts} + + \question Finde heraus, was die Funktionen \verb+bitand+ und \verb+bitor+ machen. + \begin{parts} + \part F\"uhre aus und erkl\"are: \verb+bitand(10, 8)+ + \part F\"uhre aus und erkl\"are: \verb+bitor(10, 8)+ + \end{parts} \item Implementiere folgende Boolesche Ausdr\"ucke. Teste mit zuf\"alligen ganzzahlingen Werten f\"ur \verb+x+ und \verb+y+. - \begin{enumerate} - \item Das Ergebnis sei wahr, wenn \verb+x+ gr\"o{\ss}er als \verb+y+ und die + \begin{parts} + \part Das Ergebnis sei wahr, wenn \verb+x+ gr\"o{\ss}er als \verb+y+ und die Summe aus \verb+x+ und \verb+y+ nicht kleiner als 100 ist. - \item Das Ergebnis sei wahr, wenn \verb+x+ und \verb+y+ ungleich 0 + \part Das Ergebnis sei wahr, wenn \verb+x+ und \verb+y+ ungleich 0 oder \verb+x+ und \verb+y+ gleich sind. - \end{enumerate} -\end{enumerate} + \end{parts} +\end{questions} \newpage -\subsection{Logische Indizierung} +\section{Logische Indizierung} Bollesche Ausdr\"ucke k\"onnen benutzt werden um aus Vektoren und Matrizen die Elemente herauszusuchen, die einem bestimmeten Kriterium entsprechen. -\begin{enumerate} -\item Gegeben sind \verb+x = (1:10)+ und +\begin{questions} + \question Gegeben sind \verb+x = (1:10)+ und \verb+y = [3 1 5 6 8 2 9 4 7 0]+. Versuche die Ausgaben folgender Anweisungen zu verstehen. - \begin{enumerate} - \item \verb+x < 5+ - \item \verb+x( x < 5) )+ - \item \verb+x( (y <= 2) )+ - \item \verb+x( (x > 2) | (y < 8) )+ - \item \verb+x( (x == 0) & (y == 0) )+ - \end{enumerate} -\item Teste den Zufallsgenerator: - \begin{enumerate} - \item Erzeuge eine 100x100 2-D Matrize mit Zufallswerten zwischen 0 - und 100 (\verb+randi+). Ersetze die Werte der - Elemente, die in folgende Klassen fallen: \verb+x < 33+ mit 0, + \begin{parts} + \part \verb+x < 5+ + \part \verb+x( x < 5) )+ + \part \verb+x( (y <= 2) )+ + \part \verb+x( (x > 2) | (y < 8) )+ + \part \verb+x( (x == 0) & (y == 0) )+ + \end{parts} + + \question Teste den Zufallsgenerator: + \begin{parts} + \part Erzeuge eine 100x100 2-D Matrize mit Zufallswerten zwischen + 0 und 100 (\verb+randi+). Ersetze die Werte der Elemente, die in + folgende Klassen fallen: \verb+x < 33+ mit 0, \verb+x >= 33 und x < 66+ mit 1 und alle \verb+x >= 66+ auf 2. - \item Ermittle die Anzahl Elemente fuer jede Klasse mithilfe eines + \part Ermittle die Anzahl Elemente fuer jede Klasse mithilfe eines Booleschen Ausdrucks (\verb+sum+ kann eingesetzt werden um die Anzahl Treffer zu ermitteln). - \end{enumerate} -\end{enumerate} + \end{parts} +\end{questions} \end{document} \ No newline at end of file