108 lines
4.3 KiB
TeX
108 lines
4.3 KiB
TeX
\documentclass[12pt,a4paper,pdftex]{exam}
|
|
|
|
\usepackage[german]{babel}
|
|
\usepackage{natbib}
|
|
\usepackage{graphicx}
|
|
\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 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry}
|
|
\pagestyle{headandfoot}
|
|
\header{{\bfseries\large \"Ubung 4}}{{\bfseries\large Kontrollstrukturen}}{{\bfseries\large 13. Oktober, 2015}}
|
|
\firstpagefooter{Dr. Jan Grewe}{Phone: 29 74588}{Email:
|
|
jan.grewe@uni-tuebingen.de}
|
|
\runningfooter{}{\thepage}{}
|
|
|
|
\setlength{\baselineskip}{15pt}
|
|
\setlength{\parindent}{0.0cm}
|
|
\setlength{\parskip}{0.3cm}
|
|
\renewcommand{\baselinestretch}{1.15}
|
|
|
|
\newcommand{\code}[1]{\texttt{#1}}
|
|
|
|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
\begin{document}
|
|
|
|
\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
|
|
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).
|
|
|
|
\begin{questions}
|
|
|
|
\question Erzeuge einen Vektor \verb+x+ mit z.B. 50 Zufallszahlen im Bereich 0 - 10.
|
|
\begin{parts}
|
|
\part Benutze eine Schleife um das arithmetische Mittel zu berechnen. Der Mittelwert ist definiert als:
|
|
$\overline{x}=\frac{1}{n}\sum\limits_{i=0}^{n}x_i $.
|
|
\part Benutze eine Schleife um die Standardabweichung zu bestimmen:
|
|
$\sigma=\sqrt{\frac{1}{n}\sum\limits_{i=0}^{n}(x_i-\overline{x})^2}$).
|
|
\part Suche in der MATLAB Hilfe nach Funktionen, die das f\"ur
|
|
dich tuen :-).
|
|
\end{parts}
|
|
|
|
\question Benutze eine \verb+while+ Schleife um so lange Zufallszahlen
|
|
(\verb+randn+) zu ziehen, bis eine Zahl gr\"o{\ss}er 0.98 gezogen
|
|
wurde. Z\"ahle die Anzahl n\"otiger Versuche.
|
|
|
|
\question Erzeuge eine 5 x 5 x 5 Matrix mit Zufallszahlen.
|
|
\begin{parts}
|
|
\part Benutze eine for Schleife um nacheinander jeweils alle
|
|
Elemente der ``Bl\"atter'' auszugeben.
|
|
\part Das gleiche mit einer while-Schleife.
|
|
\end{parts}
|
|
|
|
\question Erstelle \verb+x+ einen Vektor mit 10 Zufallszahlen im
|
|
Bereich 0:10.
|
|
\begin{parts}
|
|
\part Benutze eine for-Schleife um all die Elemente zu loeschen,
|
|
die (\verb+x(index) = [];+) kleiner als 5 sind.
|
|
\part Loesche alle Elemente die kleiner als 5 und groesser als 2
|
|
sind.
|
|
\part Kann man das gleiche auch ohne eine Schleife erledigen?
|
|
\end{parts}
|
|
|
|
\question Teste den Zufallsgenerator! Dazu z\"ahle die Anzahl der
|
|
Elemente, die durch folgende Grenzen getrennt werden [0.0, 0.2,
|
|
0.4, 0.6, 0.8, 1.0]. Speichere die Ergebnisse in einem passenden
|
|
Vektor. Nutze eine Schleife um 1000 Zufallszahlen mit
|
|
\verb+rand()+ (siehe Hilfe) zu ziehen. Was waere die Erwartung,
|
|
was kommt heraus?
|
|
|
|
\question String parsing: Mitunter werden Dateinamen von
|
|
Datens\"atzen benutzt um anzuzeigen unter welchenBedingungen die
|
|
Daten gewonnen wurden. Man muss also den Dateinamen parsen und die
|
|
f\"ur einen relevante Information herausfiltern.
|
|
\begin{parts}
|
|
\part Erstelle eine Variable
|
|
\verb+filename = '2010-10-12_100Hz_1.25V.dat'+. Der Unterstrich
|
|
ist offensichtlich das verwendete Trennzeichen.
|
|
\part Benutze eine \verb+for+ Schleife um durch alle Zeichen zu
|
|
laufen. Vergleiche jedes Zeichen mit dem Unterstrich und merke
|
|
dir die Positionen.
|
|
\part Benutze eine zweite Schleife um durch diesen
|
|
Positionsvektor zu laufen und benutze die darin enthaltene
|
|
Information um den \verb+filename+ in Teile zu schneiden.
|
|
\part Gib die einzelnen Teile auf dem Bildschirm aus.
|
|
\end{parts}
|
|
|
|
\end{questions}
|
|
|
|
\end{document}
|