Vektoren geschafft....

This commit is contained in:
Jan Grewe 2014-10-08 08:59:41 +02:00
parent 036b1893da
commit a2d8eb2186

View File

@ -293,20 +293,19 @@
\begin{frame}[fragile]
\frametitle{Vektoren und Matrizen}
\framesubtitle{Erzeugen von Vektoren}
\tiny
\footnotesize
\begin{lstlisting}[label=arrayListing1]
>> a = [0 1 2 3 4 5 6 7 8 9] % a brute-force way to define a vector
a =
0 1 2 3 4 5 6 7 8 9
>>
>> b = (0:9) % a more convenient way
b =
0 1 2 3 4 5 6 7 8 9
>>
>> c = (0:2:10) % define a vector and fill it with number between 0
% and 10 in steps of 2
c =
0 2 4 6 8 10
>> a = [0 1 2 3 4 5 6 7 8 9] % Erstellen eines Zeilenvektors
a =
0 1 2 3 4 5 6 7 8 9
>>
>> b = (0:9) % etwas bequemer
b =
0 1 2 3 4 5 6 7 8 9
>>
>> c = (0:2:10)
c =
0 2 4 6 8 10
\end{lstlisting}
\end{frame}
@ -315,25 +314,137 @@
\framesubtitle{Spalten \& Zeilenvektoren}
\tiny
\begin{lstlisting}[label=arrayListing2]
>> a = [1 2 3 4 5 6 7 8 9 10] % create a row vector
a =
>> a = [1 2 3 4 5 6 7 8 9 10] % Erstellen eines Zeilenvektors
a =
1 2 3 4 5 6 7 8 9 10
>>
>> b = [1; 2; 3; 4; 5] % a column vector
b =
>>
>> b = [1; 2; 3; 4; 5] % Erstellen eines Spaltenvectors
b =
1
2
3
4
5
>>
>> b = b' % transpose it to a row vector
b =
>>
>> b = b' % Transponieren
b =
1 2 3 4 5
>>
>>
\end{lstlisting}
\end{frame}
\begin{frame}
\frametitle{Vektoren}
\framesubtitle{Zugriff auf Inhalte von Vektoren}
\begin{figure}
\centering
\includegraphics[width=0.8\columnwidth]{./images/arrayIndexing.pdf}
\end{figure}
\pause
Der Zugriff auf die Inhalte eines Vektors erfolgt \"uber den Index.\\
\textbf{Achtung!} Der erste Index ist die 1.
\end{frame}
\begin{frame}[fragile]
\frametitle{Vektoren}
\framesubtitle{Zugriff auf Inhalte von Vektoren}
\vspace{-0.5cm}
\footnotesize
\begin{lstlisting}
>> a = (11:20);
>> a(1) % das 1. Element
ans =
11
>>
>> a(5) % das 5. Element
ans =
15
>>
>> a(end) % das letzte Element
ans =
20
>>
\end{lstlisting}
\end{frame}
\begin{frame}[fragile]
\frametitle{Vektoren}
\framesubtitle{Zugriff auf Inhalte von Vektoren}
\vspace{-0.5cm}
\footnotesize
\begin{lstlisting}
>> a([1 3 5]) % das 1., 3. und 5. Element
ans =
11 13 15
>>
>> a(2:4) % alle element von Index 2 bis 4
ans =
12 13 14
>>
>> a(1:2:end) %retrieve every second element
>> and =
>> 11 13 15 17 19
>>
\end{lstlisting}
\end{frame}
\begin{frame}[fragile]
\frametitle{Vektoren}
\framesubtitle{Grundlegende Operationen}
\vspace{-0.25cm}
\footnotesize
\begin{lstlisting}[label=arrayListing4]
>> a = (0:2:8);
>> a + 5 % addiere einen Skalar
ans =
5 7 9 11 13
>>
>> a * 2 % Multiplication
ans =
0 4 8 12 16
>>
>> a / 2 % Division
ans =
0 1 2 3 4
>>
>> a(1:3) + a(2:4) % Addieren von 2 Vektoren
ans =
2 6 10
>>
>> a(1:2) + a(2:4) % Addierte Vektoren muessen die gleiche Groesse haben!
??? Error using ==> plus
Matrix dimensions must agree.
\end{lstlisting}
\end{frame}
\begin{frame}[fragile]
\frametitle{Vektoren}
\framesubtitle{\"Ubungen}
\begin{enumerate}
\item Erzeuge Vektoren:
\begin{enumerate}
\item Von 1 bis 10 in ganzzahligen Schritten.
\item $2:20$ in 2er Schritten.
\item mit absteigendem Inhalt von 100 bis 0.
\item In 100 Schritten von 0 bis $2\pi$ ($\pi$ ist als Konstante 'pi'
in Matlab definiert).
\end{enumerate}
\item Erzeuge eine Variable und speichere etwas Text in ihr sodass
mindestens 2 Worte vorhanden
sind. \\ (\verb+x = 'some text'+). Benutze die Indizierung um die
Woerter einzeln auszugeben.
\item Definiere zwei Vektoren: \verb+x = [3 2 6 8];+ and \verb+y = [4; 1; 3; 5];+
\begin{enumerate}
\item ... addiere 5 zu jedem Element von \verb+x+.
\item ... addiere 3 zu jedem Element zu jedem Element von y, dass einen nicht gerade Index hat.
\item ... multipliziere jedes Element von \verb+x+ mit dem
entsprechenden Element in \verb+y+ und weise das Ergebnis der
Variable \verb+z+ zu.
\end{enumerate}
\end{enumerate}
\end{frame}
\end{document}