\documentclass[12pt,a4paper,pdftex]{article}

\usepackage{natbib}
\usepackage{graphicx}
\usepackage[margin=1.5in]{geometry}
\usepackage[small]{caption}
\usepackage{sidecap}
\usepackage{pslatex}
\usepackage{amsmath}
\usepackage{amssymb}
\setlength{\marginparwidth}{2cm}
\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}

\setlength{\oddsidemargin}{2.5cm}
\setlength{\evensidemargin}{2.5cm}
\setlength{\textwidth}{16cm}

\setlength{\voffset}{-1in}
\setlength{\hoffset}{-1in}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
\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 }}

\begin{document}
\maketitle

Die folgenden Aufgaben dienen der \"Ubung und Selbstkontrolle und
sollten eigenst\"andig bearbeitet und gel\"ost werden. Die L\"osung
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''
benannt werden (z.B. variablen\_datentypen\_mueller.m).

\section{Aufgaben}

\subsection{Boolesche Ausdr\"ucke}

\begin{enumerate}
\item 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}
\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
    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
    oder \verb+x+ und \verb+y+ gleich sind.
  \end{enumerate}
\end{enumerate}

\newpage
\subsection{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
  \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,
    \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
    Booleschen Ausdrucks (\verb+sum+ kann eingesetzt werden um die
    Anzahl Treffer zu ermitteln).
  \end{enumerate}
\end{enumerate}

\end{document}