diff --git a/programming/exercises/variables_types.tex b/programming/exercises/variables_types.tex index d4f87bb..8819b82 100644 --- a/programming/exercises/variables_types.tex +++ b/programming/exercises/variables_types.tex @@ -15,7 +15,7 @@ \usepackage[left=20mm,right=20mm,top=25mm,bottom=25mm]{geometry} \pagestyle{headandfoot} \header{{\bfseries\large \"Ubung 1}}{{\bfseries\large Variablen und Datentypen}}{{\bfseries\large 12. Oktober, 2015}} -\firstpagefooter{Dr. Jan Grewe}{Phone: 29 74574}{Email: +\firstpagefooter{Dr. Jan Grewe}{Phone: 29 74588}{Email: jan.grewe@uni-tuebingen.de} \runningfooter{}{\thepage}{} @@ -53,17 +53,6 @@ benannt werden (z.B. variablen\_datentypen\_mueller.m). unterschiedliche Werte zu. Schlie{\ss}e die Zeilen mit einem Semikolon ab. Erstelle eine Variable \code{c} die leer ist. \part Lass die Werte der Variablen ausgeben. - \part F\"uhre einfache mathematische Operationen aus (Addition, - Subtraktion, etc., Potenzierung erfolgt \"uber das Dach Symbol - \code{\^}). \"Uberpr\"ufe, ob sich der der urspr\"ungliche Wert - der Variable ge\"andert hat. - - 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. \part Benuzte die Kommandozeile um herauszufinden, welche Datentypen sie haben. @@ -72,6 +61,20 @@ benannt werden (z.B. variablen\_datentypen\_mueller.m). \part L\"osche alle \"ubrigen Variablen. \end{parts} +\question Operationen auf Variablen: +\begin{parts} + \part Erstelle die Variablen \code{a} und \code{b} und weise ihnen + beliebige Werte zu. + \part Addiere beliebige andere Zahlen zu den Variablen \code{a} und \code{b}. + \part Addiere die Variablen. + \part Mulipliziere die Variablen miteinander. + \part \"Andern sich die urspr\"unglichen Werte der Variablen? + \part F\"uhre eine beliebige Berechnungen mit den Variablen aus und + weise die Ergebnisse einer neuen Variable \code{x} zu. + \part Weise \code{a} und \code{b} neue Werte zu. Hat sich etwas am + Wert von \code{x} ge\"andert? + \end{parts} + \question Berechne die Fakult\"at von 5: \begin{parts} \part Erzeuge eine Variable \code{x} und weise ihr den Wert 1 zu. @@ -90,8 +93,9 @@ XXX Und dann als motivation fuer eine function! XXX \question Was sind die gr\"o{\ss}ten Zahlen, die in den Integer 8, 16, 32 und 64 bit Datentypen abgelegt werden k\"onnen? -\question Erstelle eine Variable des 8 Bit Integer Datentyps und weise ihr einen Wert zu. -Addiere \code{300}. Welchen Wert enth\"alt nun die Variable? Warum? +\question Erstelle eine Variable des 8 Bit Integer Datentyps und weise +ihr einen Wert zu. Addiere \code{300}. Welchen Wert enth\"alt nun die +Variable? Warum? \question Erkl\"are die Ausgaben von \code{int8(1024)} und \code{uint8(1024)}. @@ -99,16 +103,19 @@ Addiere \code{300}. Welchen Wert enth\"alt nun die Variable? Warum? \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 Wandle \code{x} in den speichereffizientesten Integer Datentypen 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 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 \verb=(2^52 + 1) - 2^52= sowie + \verb=(2^53 + 1) - 2^53=. \part Berechne \code{sqrt(1+1e-16)-1} . Ist das richtig? Warum? \end{parts} @@ -118,7 +125,7 @@ Addiere \code{300}. Welchen Wert enth\"alt nun die Variable? Warum? \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)} ? + \part Was ist \code{sin(pi)} ? \end{parts} \end{questions}