fprintf('Matrixdefinitionen\n');
A = [1 2 3; 4 5 6; 7 8 9];
B = [11 12 13
     14 15 16];
C = [21 22 23; 1 2 3; 101 102 103];
AC = [A C];
E = eye(3);
Z = zeros(3,3);

fprintf('Vektordefinitionen\n');
v = [1.1; 1.2; 1.3; 1.4; 1.5];
w = [1.6 1.7 1.8];
z = [1.1; 1.2; 1.3];
a = 1:3;
b = 3:-1:1;
c = 1:2:10;
d = 1:0;

fprintf('Matrix-Vektoroperationen\n');
A*z
w.*w


fprintf('Groessen von Matrizen\n');
size(A)
size(B)
size(v)
size(w)


fprintf('Groessen in bestimmten Dimensionen\n');
size(B,1)
size(B,2)

% https://de.mathworks.com/company/newsletters/articles/matrix-indexing-in-matlab.html

fprintf('Vektorindizierung (wir starten bei 1)\n');
v(1)
v(2) = w(3);
v

fprintf('Teilweise Vektorindizierung\n');
v([1 3 5])
v(2:4)
v([1:3 3:5])

v(3:-1:1) = w;
v

v(1:2:6)

fprintf('Spezielle Indices\n');
v(end)
v(4:end)
v(end-1)

fprintf('Matrixindizierung (wir starten bei 1)\n');
A(1,1)
A(1,1) = B(2,3);
A


fprintf('Einzelne Reihen und Spalten\n');
A(:,1)
A(2,:)
A(3,:) = B(1,:);
A


fprintf('Teile von Reihen und Spalten\n');
A(2:3,1)
A(3:-1:2,1)
A([1 3],1)
A(1,[1 3])
A(1,[1 3])
A(2,2:end)

fprintf('Lineare Indizierung\n');
A(8)
A(1:8)

A(1:3) = v(1:3);
A

idx = sub2ind(size(A), 1:2 , 2:3 )
A(idx)


fprintf('Logische Indizierung\n');
A
A(A>2)
A(find(A>2))
A(A>2) = 0






