Comments and more questions for variables and types.
This commit is contained in:
parent
cedca289c1
commit
76881b3dc8
BIN
programming/exercises/UT_WBMW_Black_RGB.pdf
Normal file
BIN
programming/exercises/UT_WBMW_Black_RGB.pdf
Normal file
Binary file not shown.
@ -1,8 +1,8 @@
|
|||||||
\documentclass[12pt,a4paper,pdftex]{article}
|
\documentclass[12pt,a4paper,pdftex]{exam}
|
||||||
|
|
||||||
|
\usepackage[german]{babel}
|
||||||
\usepackage{natbib}
|
\usepackage{natbib}
|
||||||
\usepackage{graphicx}
|
\usepackage{graphicx}
|
||||||
\usepackage[margin=1.5in]{geometry}
|
|
||||||
\usepackage[small]{caption}
|
\usepackage[small]{caption}
|
||||||
\usepackage{sidecap}
|
\usepackage{sidecap}
|
||||||
\usepackage{pslatex}
|
\usepackage{pslatex}
|
||||||
@ -12,35 +12,29 @@
|
|||||||
\usepackage[breaklinks=true,bookmarks=true,bookmarksopen=true,pdfpagemode=UseNone,pdfstartview=FitH,colorlinks=true,citecolor=blue]{hyperref}
|
\usepackage[breaklinks=true,bookmarks=true,bookmarksopen=true,pdfpagemode=UseNone,pdfstartview=FitH,colorlinks=true,citecolor=blue]{hyperref}
|
||||||
|
|
||||||
%%%%% text size %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
%%%%% text size %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||||
% letter : 8.5 x 11 in
|
\usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry}
|
||||||
\setlength{\headheight}{5mm} % default ~5mm
|
\pagestyle{headandfoot}
|
||||||
\setlength{\headsep}{8mm} % default ~10mm
|
\header{{\bfseries\large \"Ubung 1}}{{\bfseries\large Variablen und Datentypen}}{{\bfseries\large 12. Oktober, 2015}}
|
||||||
\setlength{\topmargin}{15mm} % default ~8mm
|
\firstpagefooter{Dr. Jan Grewe}{Phone: 29 74574}{Email:
|
||||||
\setlength{\textheight}{23cm}
|
jan.grewe@uni-tuebingen.de}
|
||||||
|
\runningfooter{}{\thepage}{}
|
||||||
|
|
||||||
\setlength{\oddsidemargin}{2.5cm}
|
\setlength{\baselineskip}{15pt}
|
||||||
\setlength{\evensidemargin}{2.5cm}
|
\setlength{\parindent}{0.0cm}
|
||||||
\setlength{\textwidth}{16cm}
|
\setlength{\parskip}{0.3cm}
|
||||||
|
\renewcommand{\baselinestretch}{1.15}
|
||||||
|
|
||||||
\setlength{\voffset}{-1in}
|
\newcommand{\code}[1]{\texttt{#1}}
|
||||||
\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 I: ---\\ Variablen und Datentypen}
|
|
||||||
\author{Jan Grewe, Jan Benda}
|
|
||||||
\date{\noindent\parbox{\textwidth}{\normalsize\itshape Eberhardt Karls Universit\"at
|
|
||||||
T\"ubingen, Abt. Neuroethologie }}
|
|
||||||
|
|
||||||
\begin{document}
|
\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
|
Die folgenden Aufgaben dienen der \"Ubung und Selbstkontrolle und
|
||||||
sollten eigenst\"andig bearbeitet und gel\"ost werden. Die L\"osung
|
sollten eigenst\"andig bearbeitet und gel\"ost werden. Die L\"osung
|
||||||
@ -48,49 +42,85 @@ soll in Form eines einzelnen Skriptes (m-files) i.d.R. am gleichen Tag
|
|||||||
mir zugeschickt werden (jan.grewe@uni-tuebingen.de). Jede Aufgabe
|
mir zugeschickt werden (jan.grewe@uni-tuebingen.de). Jede Aufgabe
|
||||||
sollte in einer eigenen ``Zelle'' gel\"ost sein. Die Zellen
|
sollte in einer eigenen ``Zelle'' gel\"ost sein. Die Zellen
|
||||||
\textbf{m\"ussen} unabh\"angig voneinander ausf\"uhrbar sein. Das
|
\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).
|
benannt werden (z.B. variablen\_datentypen\_mueller.m).
|
||||||
|
|
||||||
\section{Aufgaben}
|
\begin{questions}
|
||||||
|
|
||||||
\begin{enumerate}
|
\question Erzeugen und L\"oschen von Variablen:
|
||||||
\item Erzeugen und L\"oschen von Variablen:
|
\begin{parts}
|
||||||
\begin{enumerate}
|
\part Erzeuge zwei Variablen \code{a}, \code{b} und weise ihnen
|
||||||
\item Erzeuge zwei Variablen \verb+a, b+ und weise ihnen
|
|
||||||
unterschiedliche Werte zu. Schlie{\ss}e die Zeilen mit einem
|
unterschiedliche Werte zu. Schlie{\ss}e die Zeilen mit einem
|
||||||
Semikolon ab. Erstelle eine Variable \verb+c+ die leer ist.
|
Semikolon ab. Erstelle eine Variable \code{c} die leer ist.
|
||||||
\item Lasse die Werte der Variablen ausgeben.
|
\part Lass die Werte der Variablen ausgeben.
|
||||||
\item F\"uhre einfache mathematische Operationen aus (Addition,
|
\part F\"uhre einfache mathematische Operationen aus (Addition,
|
||||||
Subtraktion, etc.) Potenzierung erfolgt \"uber das Dach Symbol
|
Subtraktion, etc., Potenzierung erfolgt \"uber das Dach Symbol
|
||||||
\verb+^+). |''Ueberpr\"ufe, ob sich der der urspruengliche Wert
|
\code{\^}). \"Uberpr\"ufe, ob sich der der urspr\"ungliche Wert
|
||||||
der Variable ge\"andert hat.
|
der Variable ge\"andert hat.
|
||||||
\item Benuzte die Kommandozeile um herauszufinden, welche Variablen
|
|
||||||
|
XXX Die Aufgabe ist sehr wichtig und koennte praezisiert und erweitert werden!
|
||||||
|
1. Zahlen auf die Variablen addieren: a+5; b-3;
|
||||||
|
2. Variablen addieren: a+b; b-c;
|
||||||
|
3. Ergebnisse zuweisen: x=a+3; z=b+5;
|
||||||
|
4. a=5; was aendert sich an x? XXX
|
||||||
|
|
||||||
|
\part Benuzte die Kommandozeile um herauszufinden, welche Variablen
|
||||||
es im Workspace gibt.
|
es im Workspace gibt.
|
||||||
\item Benuzte die Kommandozeile um herauszufinden, welche Datentypen sie haben.
|
\part Benuzte die Kommandozeile um herauszufinden, welche Datentypen sie haben.
|
||||||
\item Finde in der Hilfe mehr Information \"uber das \verb+clear+ Kommando.
|
\part Finde in der Hilfe mehr Information \"uber das \code{clear} Kommando.
|
||||||
\item L\"osche eine Variable.
|
\part L\"osche eine Variable.
|
||||||
\item L\"osche alle \"ubrigen Variablen.
|
\part L\"osche alle \"ubrigen Variablen.
|
||||||
\end{enumerate}
|
\end{parts}
|
||||||
\item Berechne die Fakult\"at von 5:
|
|
||||||
\begin{enumerate}
|
\question Berechne die Fakult\"at von 5:
|
||||||
\item Erzeuge eine Variable \verb+x+ und weise ihr den Wert 1 zu.
|
\begin{parts}
|
||||||
\item Berechne den ersten Schritt und weise das Ergebnis \verb+x+
|
\part Erzeuge eine Variable \code{x} und weise ihr den Wert 1 zu.
|
||||||
|
\part Berechne den ersten Schritt und weise das Ergebnis \code{x}
|
||||||
zu.
|
zu.
|
||||||
\item Wiederhole bis die Fakult\"at von 5 berechnet ist. \verb+x+
|
\part Wiederhole bis die Fakult\"at von 5 berechnet ist. \code{x}
|
||||||
sollte nun das Endergebnis enthalten.
|
sollte nun das Endergebnis enthalten.
|
||||||
\end{enumerate}
|
\end{parts}
|
||||||
\item Erstelle eine Variable, die einen beliebigen Text enth\"alt. Was
|
XXX Die Aufgabe kann als Motivation fuer eine for schleife verwendet werden! XXX
|
||||||
|
XXX Und dann als motivation fuer eine function! XXX
|
||||||
|
|
||||||
|
\question Erstelle eine Variable, die einen beliebigen Text enth\"alt. Was
|
||||||
ist ihr Datentyp?
|
ist ihr Datentyp?
|
||||||
\item Erstelle eine Variable des 8 Bit Integer Datentyps und weise ihr einen Wert zu.
|
XXX Operationen auf strings? Addition, concatenation, ... XXX
|
||||||
\item Was sind die gr\"o{\ss}ten Zahlen, die in den Integer 8, 16, 32
|
|
||||||
|
\question Was sind die gr\"o{\ss}ten Zahlen, die in den Integer 8, 16, 32
|
||||||
und 64 bit Datentypen abgelegt werden k\"onnen?
|
und 64 bit Datentypen abgelegt werden k\"onnen?
|
||||||
\item Erkl\"are die Ausgaben von \verb+int8(1024)+ und \verb+uint8(1024)+.
|
|
||||||
\item Typekonvertierung:
|
\question Erstelle eine Variable des 8 Bit Integer Datentyps und weise ihr einen Wert zu.
|
||||||
\begin{enumerate}
|
Addiere \code{300}. Welchen Wert enth\"alt nun die Variable? Warum?
|
||||||
\item F\"uhre aus: \verb+x = 131.333+. Welchen Datentyp hat die
|
|
||||||
Variable \verb+x+?
|
\question Erkl\"are die Ausgaben von \code{int8(1024)} und \code{uint8(1024)}.
|
||||||
\item Wandle \verb+x+ den speichereffizientesten Integer Typen um.
|
|
||||||
\end{enumerate}
|
\question Typkonvertierung:
|
||||||
\end{enumerate}
|
\begin{parts}
|
||||||
|
\part F\"uhre aus: \code{x = 131.333}. Welchen Datentyp hat die
|
||||||
|
Variable \code{x}?
|
||||||
|
\part Wandle \code{x} in den speichereffizientesten Integer Typen um.
|
||||||
|
\part Welchen Wert hat nun \code{x} ?
|
||||||
|
\end{parts}
|
||||||
|
|
||||||
|
\question Flie{\ss}kommazahlen 1: Endliche Pr\"azision bei Addition
|
||||||
|
\begin{parts}
|
||||||
|
\part Weise der Variablen \code{a} eine Zahl mit Nachkommastellen zu.
|
||||||
|
\part Eine weitere Variable \code{b} soll den Wert \code{a+0.001} haben. Was ist das Ergebnis von \code{b-a} ?
|
||||||
|
\part Einer dritte Variable \code{c} soll der Wert \code{a+1e-16} zugewiesen werden. Was ist das Ergebnis von \code{c-a} ? Warum?
|
||||||
|
\part Berechne mit matlab \code{(2\^52+1)-2\^52} sowie \code{(2\^53+1)-2\^53} .
|
||||||
|
\part Berechne \code{sqrt(1+1e-16)-1} . Ist das richtig? Warum?
|
||||||
|
\end{parts}
|
||||||
|
|
||||||
|
\question Flie{\ss}kommazahlen 2: Endliche Pr\"azision bei Multiplikation
|
||||||
|
\begin{parts}
|
||||||
|
\part Weise der Variablen \code{a} die Zahl \code{4/3} zu.
|
||||||
|
\part Die Variable \code{b} soll den Wert \code{3*(a-1)} erhalten.
|
||||||
|
\part Welches Ergebnis erwartest du f\"ur \code{b-1} ?
|
||||||
|
\part Berechne mit matlab \code{b-1} !
|
||||||
|
\part Was ist \code{\sin(pi)} ?
|
||||||
|
\end{parts}
|
||||||
|
|
||||||
|
\end{questions}
|
||||||
|
|
||||||
\end{document}
|
\end{document}
|
Reference in New Issue
Block a user