==== 29. Mai 2017 bis 2. Juni 2017 ====
=== Dienstag 30. Mai 2017 ===
**Achtung, dynamische Aufgabe**. //Hinweis: Steht bei einem Wurzelterm die Wurzel im Nenner, wird mit dieser Wurzel erweitert (unten und oben multipliziert), um den Nenner wurzelfrei zu schreiben.//
function generate(jQuery, idex, idsol, what) {
what = (typeof what !== 'undefined') ? what : "3d";
var randi = function(m) {
return Math.floor(Math.random()*m);
};
var dispVec = function(a) {
return "\\begin{pmatrix}"+a[0]+"\\\\ "+a[1]+"\\\\ "+a[2]+" \\end{pmatrix}";
};
var dispPoint = function(a) {
return "\\left("+a[0]+", "+a[1]+", "+a[2]+" \\right)";
};
var vecDiff = function(a,b) {
return [a[0]-b[0], a[1]-b[1], a[2]-b[2]];
};
var vecSum = function(a,b) {
return [a[0]+b[0], a[1]+b[1], a[2]+b[2]];
};
var lensq = function(a) {
return a[0]*a[0]+a[1]*a[1]+a[2]*a[2];
};
var quadrFactor = function(w) {
var f = 1;
for (var i=2; i*i<=w; i++) {
while (w % (i*i) == 0) {
w/=i*i;
f*=i;
}
}
return f;
}
var normalform = function(w, full) {
full = (typeof full !== 'undefined') ? full : true;
var r="";
if (full) {
r = "\\sqrt{"+w+"}";
}
var f = quadrFactor(w);
w = w/(f*f);
if (f!=1) {
if (w!=1) {
r+=(full ? "=" : "")+f+"\\sqrt{"+w+"}";
} else {
r+=(full ? "=" : "")+f;
}
}
if (r=="") {
r = "\\sqrt{"+w+"}";
}
return r;
};
var ggt = function(a,b) {
if (b==0) return a;
return ggt(b, a % b);
}
var normalkehrwert = function(mul, w) {
//console.log("mul="+mul+" w="+w);
var f = quadrFactor(w);
w = w/(f*f);
var g = ggt(Math.abs(mul),f*w);
var z = mul/g;
var n = f*w/g;
//console.log("f="+f+" z="+z+" n="+n);
var r = (z<0) ? "-" : "";
z = Math.abs(z);
if (n==1) {
r+=z;
} else {
r+="\\frac{"+z+"}{"+n+"}";
}
if (w!=1) {
r+="\\cdot \\sqrt{"+w+"}"
}
return r;
}
var nicePoints = function(maxComp) {
var vecs;
var pts;
for (var k=0; k<2000; k++) {
vecs = [];
for (var i=0; i<2; i++) {
vecs[i]=[];
for (var j=0; j<3; j++) {
vecs[i].push((randi(maxComp)+1));
}
if (i==0) {
vecs[i][0] = -vecs[i][0];
} else {
vecs[i][1] = -vecs[i][1];
vecs[i][2] = -vecs[i][2];
}
}
var pts = [[randi(maxComp)+1, -randi(maxComp)-1, randi(maxComp)+1]];
pts.push(vecSum(pts[0],vecs[0]));
pts.push(vecSum(pts[1],vecs[1]));
var v3 = vecSum(vecs[0], vecs[1]);
if (quadrFactor(lensq(vecs[0]))>1 &&
quadrFactor(lensq(vecs[1]))>1 &&
quadrFactor(lensq(v3))>1 &&
v3[0]*v3[1]*v3[2]!=0 &&
quadrFactor(lensq(vecs[0]))*quadrFactor(lensq(vecs[0]))!=lensq(vecs[0]) &&
quadrFactor(lensq(vecs[1]))*quadrFactor(lensq(vecs[1]))!=lensq(vecs[1]) &&
quadrFactor(lensq(v3))*quadrFactor(lensq(v3))!=lensq(v3)) {
return pts;
}
}
console.log("Sorry...");
return pts;
};
var nice2dvec = function(maxComp) {
var vec;
for (var k=0; k<2000; k++) {
vec = [];
for (var j=0; j<2; j++) {
vec.push((randi(maxComp)+1));
if (Math.random()<0.5) {
vec[j]=-vec[j];
}
}
vec.push(0);
if (quadrFactor(lensq(vec))>1 &&
quadrFactor(lensq(vec))*quadrFactor(lensq(vec))!=lensq(vec)) {
return vec;
}
}
console.log("Sorry...");
return vec;
}
if (what=="3d") {
var vecs=nicePoints(7);
var pnames = ["A","B", "C"];
var ex = "Gegeben sind drei Punkte: ";
for (var i=0; i<3; i++) {
ex+="$"+pnames[i]+"="+dispPoint(vecs[i])+"$"+(i==2 ? "." : ", ");
}
ex += "
Berechnen Sie die Komponenten und die Länge (Wurzeln in Normalform) von
\
1. $\\vec{AB}$
\
2. $\\vec{AC}$
\
3. $\\vec{BC}$";
jQuery(idex).append(ex);
var sol = ""
var n = 1;
for (var i=0; i<2; i++) {
for (var j=i+1; j<3; j++) {
var diff = vecDiff(vecs[j],vecs[i])
sol+=n+". $"+dispVec(diff)+"$";
sol+=", Länge $"+normalform(lensq(diff))+"$
";
n++;
}
}
jQuery(idsol).append(sol);
} else {
var sol = "";
var ex = "Bestimmen Sie einen Vektor $\\vec u$ mit Länge 1, der rechtwinklig auf den Vektor $\\vec v$ steht. Geben Sie die Komponenten von $\\vec u$ mit Wurzeln in Normalform an.
\n";
for (var i=1; i<=3; i++) {
var vec = nice2dvec(9);
ex+=""+i+". $\\vec v = \\begin{pmatrix} "+vec[0]+"\\\\ "+vec[1]+" \\end{pmatrix}$
\n";
sol += ""+i+". $|\\vec v| = "+normalform(lensq(vec))+"$. ";
sol += "Damit ist der gesuchte Vektor $\\vec u = \\pm \\frac{1}{"+normalform(lensq(vec),false)+"} \\cdot \\begin{pmatrix} "+(-vec[1])+"\\\\ "+vec[0]+" \\end{pmatrix} = ";
sol += "\\pm \\begin{pmatrix} "+normalkehrwert(-vec[1],lensq(vec))+"\\\\ "+normalkehrwert(vec[0], lensq(vec))+" \\end{pmatrix}$
\n";
}
jQuery(idex).append(ex);
jQuery(idsol).append(sol);
}
}
jQuery = jQuery ? jQuery : $,1
jQuery(function() {generate(jQuery, "#exos","#sol", "2d");});
=== Donnerstag 1. Juni 2017 ===
Mit Hilfe einer Skizze, und einigen stichwortartigen Sätzen, leiten Sie die Längenformel für die Berechnung der Länge eines Vektors $\vec v = \begin{pmatrix} x \\ y \\ z \end{pmatrix}$ her.
=== Freitag 2. Juni 2017 ===