Serie 10 - Universität Basel

Werbung
Praktikum I “Mathematik am Computer”
Prof. M. Grote/ U. Nahum, M. Utzinger, D. Tröndle,
U. Schweizer und C. Landolina
HS 2015
Universität Basel
Serie 10
MATLAB - Back to Basics: for-, while-loops, if-conditions
zur 48. KW (23.11. - 29.11.2015)
Schreibe alle Aufgaben in Matlab-Skripte.
Aufgabe 10.1: Überprüfe mit einer if-Bedingung und der mod-Funktion ob die Zahlen
29529 und 28307 durch 153 teilbar sind. Wenn ja, dann gebe den zweiten Faktor aus. Wenn
nein, dann gebe die ursprüngliche Zahl aus.
Aufgabe 10.2:
a) Erzeuge den Vektor x = (0, 0.02, . . . , 2) sowohl mit als auch ohne for-Schleife.
b) Erzeuge den Vektor y = (y1 , y2 , . . . , y101 ) mit
yi = cos(xi ) · sin(xi )
für i = 1, . . . , 101.
und x aus Aufgabe a) sowohl mit als auch ohne for-Schleife.
Aufgabe 10.3: Verwende for-Schleifen, um folgende Produkte zu berechnen. Überprüfe
die Resultat mit den eingebauten Matlab-Routinen.
a) Das Skalarprodukt zweier Vektoren x, y ∈ RN ×1 ist definiert als
hx, yi =
N
X
xi yi .
i=1
Berechne das Skalaprodukt von xt = (1, 1.1, 1.2, . . . , 2) und y t = (1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1)
für N = 11.
b) Das Matrix-Vektor-Produkt y = Ax einer Matrix A = (aij ) und eines Vektors x = (xj )
wird wie folgt berechnet
N
X
yi =
aij xj .
j=1
Was ist y für

1
0
A=
1
0
und xt = (−5, 6, 0, 2)?
1
0
0
1
0
2
2
1
0

3
1

1
2
Aufgabe 10.4: Zu der folgenden Aufgabe schreibe ein Matlab-Programm auf einem Blatt
Papier ohne die Aufgabe auf dem Computer zu programmieren:
a) Erzeuge den Vektor x = (0, 0.01, . . . , 1) sowohl mit als auch ohne for-Schleife.
b) Erzeuge den Vektor y = (y1 , y2 , . . . , y101 ) mit
yi = cos(2xi π) · e3xi
für i = 1, . . . , 101.
und x aus Aufgabe a) sowohl mit als auch ohne for-Schleife.
Allgemeine Informationen zum Praktikum I befinden sich auf der Webseite
http://tinyurl.com/nlz5p4h
2
Herunterladen