lehrkraefte:blc:miniaufgaben:kw50-2017

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

lehrkraefte:blc:miniaufgaben:kw50-2017 [2017/12/07 14:18] – created Ivo Blöchligerlehrkraefte:blc:miniaufgaben:kw50-2017 [2020/08/09 13:16] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +==== 11. Dezember 2017 bis 15. Dezember 2017 ====
 +=== Dienstag 12. Dezember 2017 und Donnerstag 14. Dezember 2017 ===
 +<PRELOAD>
 +lib/function-plot/d3.min.js
 +lib/function-plot/function-plot.js
 +</PRELOAD>
 +**Achtung**: Die Aufgaben werden bei jedem Laden der Seite zufällig **neu generiert**. Auswendig lernen bringt also gar nichts.
 +
 +Zu folgenden Graphen bestimmen Sie Exponentialfunktionen in der Form $f(x)=b\cdot a^x$:
 +<HTML>
 +<!-- Siehe https://github.com/maurizzzio/function-plot und http://maurizzzio.github.io/function-plot/ -->
 +<div id="exfunone"></div>
 +</HTML>
 +<JS>
 +function shuffleArray(array) {
 +    for (var i = array.length - 1; i > 0; i--) {
 +        var j = Math.floor(Math.random() * (i + 1));
 +        var temp = array[i];
 +        array[i] = array[j];
 +        array[j] = temp;
 +    }
 +    return array;
 +}
 +
 +function randi(m) {
 + return Math.floor(Math.random()*m);
 +}
 +
 +function contFrac(v) {
 +    var eps = 0.00001;
 +    var res=[Math.floor(v)];
 +    v = v-res[0];
 +    for (var i=0; i<5; i++) {
 + if (v<eps || v>1-eps) {
 +     if (v>1-eps) res[res.length-1]++;
 +     return res;
 + }
 + v = 1/v;
 + res[res.length] = Math.floor(v);
 + v = v-res[res.length-1];
 +    }
 +    return res;
 +}
 +
 +function cFtoTex(cf) {
 +    var denom = 1;
 +    var num = 0;
 +    for (var i = cf.length-1; i>=0 ; i--) {
 + num = cf[i]*denom+num;
 + var tmp = num;
 + num = denom;
 + denom = tmp;
 +    }
 +    return "\\frac{"+denom+"}{"+num+"}"
 +}
 +
 +function getFraction(v, fracpar=false) {
 +    var cf = contFrac(Math.abs(v));
 +    if (cf.length==1) return v;
 +    return (fracpar ? "\\left(" : "") + ((v < 0 ? "-" : "") + cFtoTex(cf))+ (fracpar ? "\\right)" : "");
 +}
 +
 +function coeff(c,v, op) {    
 +    if (c==0) return "";
 +    if (v!="") {
 + if (c==1) return (op ? "+" : "")+v;
 + if (c==-1) return "-"+v;
 + if (c>0) return (op ? "+" : "")+getFraction(c)+v;
 + return ""+getFraction(c)+v;
 +    } else {
 + return ((op && (c>0)) ? "+" : "")+getFraction(c);
 +    }
 +}
 +
 +templates = [
 +    {
 + name:"Quadratisch, $a=\pm 1$",
 + make:function(num, acoeff) {
 +     num = (num ? num : 1);
 +     var exs = [];
 +     var sx=shuffleArray([-2,-1,1,2]);
 +     var sy=shuffleArray([-2,-1,1,2]);
 +     var a = acoeff ? shuffleArray(acoeff) : shuffleArray([-2,-1,-0.5,-0.25,0.25,0.5,1,2]);
 +     for (var i=0; i<num; i++) {
 + var res="";
 + if (sx[i]==0) {
 +     res = coeff(a[i],"x^2");
 + } else {
 +     res = coeff(a[i],"(x"+coeff(-sx[i],"",true)+")^2");
 + }
 + res += coeff(sy[i],"",true);
 + exs[i]= {
 +     funcPlot:{
 + xAxis:{domain:[-4,4]},
 + yAxis:{domain:[-4,4]},
 + data:[{fn:""+a[i]+"*(x-"+sx[i]+")^2+"+sy[i]}],
 +     },
 +     solution:res,
 + };
 +     }
 +     return (num==1 ? exs[0] : exs);
 + },
 +    },
 +    {
 + name:"Wurzeln, $a=\pm 1$",
 + make:function(num, acoeff) {
 +     num = (num ? num : 1);
 +     var exs = [];
 +     for (var i=0; i<num; i++) {
 + var sx = randi(2)*2-1;
 + var sy = randi(2)*2-1;
 + var ox = -(randi(3)+1)*sx;
 + var oy = -(randi(3)+1)*sy;
 + var res="";
 + var w = "x"+coeff(-ox,"",true);
 + if (sx!=1) w="("+w+")";
 + res = coeff(sy,"\\sqrt{"+coeff(sx,w)+"}")+coeff(oy,"", true);
 + exs[i]= {
 +     funcPlot:{
 + xAxis:{domain:[-4,4]},
 + yAxis:{domain:[-4,4]},
 + data:[{fn:""+sy+"*sqrt("+sx+"*(x-"+ox+"))+"+oy}],
 +     },
 +     solution:res,
 + };
 +     }
 +     return (num==1 ? exs[0] : exs);
 + },
 +    },
 +    {
 + name:"Linear",
 + make:function(num) {
 +     num = (num ? num : 1);
 +     var steigungen=shuffleArray([-2,-1,-0.5,0,0.5,1,2]);
 +     var abschnitte=shuffleArray([-3,-2,-1,1,2,3]);
 +     var res = [];
 +     for (var i=0; i<num; i++) {
 + var ab = abschnitte[i];
 + if (ab==0) { ab=""}
 + if (ab>0) { ab="+"+ab}
 + var st = steigungen[i];
 + if (st==-1) { st="-";}
 + if (st==1) {st="";}
 + if (st=="0") {st="";} else {st=st+"x"}
 + res[i] = {
 +     funcPlot:{
 + xAxis:{domain:[-4,4]},
 + yAxis:{domain:[-4,4]},
 + data:[{fn: ""+steigungen[i]+"*x+"+abschnitte[i]}]
 +     },
 +     solution:st+ab,
 + };
 +     }
 +     return (num==1 ? res[0] : res);
 + }
 +    },
 +    {
 + name:"Exponentiell",
 + make:function(num) {
 +     num = (num ? num : 1);
 +     var basen=shuffleArray([1.0/3.0, 0.5, 2, 3]);
 +     var multiplikator=shuffleArray([2.0, 0.5, -2.0, -0.5, 3.0, 1.0/3.0, -3.0, -1.0/3.0]);
 +     var res = [];
 +     for (var i=0; i<num; i++) {
 + var a = basen[i];
 + var aa = getFraction(a,true)
 + var m = multiplikator[i];
 + var mm = getFraction(m,false);
 + res[i] = {
 +     funcPlot:{
 + xAxis:{domain:[-4,4]},
 + yAxis:{domain:[-4,4]},
 + data:[{fn: ""+m+"*exp(x*log("+a+"))"}]
 +     },
 +     solution:""+mm+"\\cdot"+aa+"^x",
 + };
 +     }
 +     return (num==1 ? res[0] : res);
 + }
 +    },
 +    {
 + name:"Exponentiell \pm a**(x+b)+c",
 + make:function(num) {
 +     num = (num ? num : 1);
 +     var basen=shuffleArray([1.0/3.0, 0.5, 2, 3]);
 +     var shx=shuffleArray([-2,-1,1,2]);
 +     var shy=shuffleArray([-2,2,-1,1]);
 +     var res = [];
 +     for (var i=0; i<num; i++) {
 + var pm = (shy[i]>0 ? -1 : 1);
 + res[i] = {
 +     funcPlot:{
 + xAxis:{domain:[-4,4]},
 + yAxis:{domain:[-4,4]},
 + data:[{fn: ""+pm+"*exp((x+("+shx[i]+"))*log("+basen[i]+"))+("+shy[i]+")"}]
 +     },
 +     solution: coeff(pm, "" + getFraction(basen[i],true)+"^{x"+coeff(shx[i],"",true)+"}"+coeff(shy[i],"",true), false) 
 + };
 +     }
 +     return (num==1 ? res[0] : res);
 + }
 +    },
 +];
 +
 +
 +function displayExos(exos, exname) {
 +    for (var i=0; i<3; i++) { 
 + jQuery("#"+exname).append("<span id=\""+exname+i+"\"></span>");
 + jQuery("#"+exname+"sol").append("Aufgabe "+(1+i)+": $f(x)="+exos[i].solution+"$<br/>");
 + exos[i].funcPlot.data[0].attr={'stroke-width':"2"};
 + functionPlot(
 +     jQuery.extend(
 + {
 +     title: "Aufgabe"+(1+i),
 +     target: "#"+exname+i,
 +     width: 250,
 +     height: 250,
 +     disableZoom: true,
 +     skipTip: true,
 +     grid: true
 + },     
 + exos[i].funcPlot
 +     )
 + );
 +    }
 +}
 +
 +
 +jQuery(function() {
 +    displayExos(templates[3].make(3), "exfunone") ;
 +});
 +</JS>
 +<hidden Lösungen>
 +Da alle Funktionen $f(x)=a^x$ durch den Punkt $(0,1)$ gehen, kann $b$ direkt als $y$-Koordinate bei $x=0$ abgelesen werden. 
 +
 +Erhöht man $x$ um eine Einheit in $f(x)=b\cdot a^x$, verändert sich der Funtionswert um den Faktor $a = \frac{f(x+1)}{f(x)} = \frac{b\cdot a^{x+1}}{a^x} = \frac{a \cdot a^x}{a^x} = a$. An geeigneten Stellen kann so die Basis bestimmt werden.
 +<HTML>
 +<div id="exfunonesol"></div>
 +</HTML>
 +</hidden>
 +=== Freitag 15. Dezember 2017 ===
 +Bestimmen Sie Funktionsgleichungen folgender Exponentialfunktionen in der Form $\pm a^{x+c}+d$:
 +<JS>
 +jQuery(function() {
 +    displayExos(templates[4].make(3), "exfuntwo") ;
 +});
 +</JS>
 +<HTML>
 +<!-- Siehe https://github.com/maurizzzio/function-plot und http://maurizzzio.github.io/function-plot/ -->
 +<div id="exfuntwo"></div>
 +</HTML>
 +<hidden Lösungen>
 +Zuerst bestimmt man die vertikale Verschiebung $d$, die man an der Asymptoten abliest (das ist die Horizontalen, an die sich Funktion annähert).
 +
 +Danach bestimmt man den Punkt, wo sich der Funktionswert um 1 von der $y$-Koordinate der Asymptoten unterscheidet. Dieser Punkt ist der verschobene Punkt $(0,1)$, durch den die Funktion $f(x)=a^x$ geht. Zuletzt bestimmt man das Vorzeichen der Funktion, je nachdem, ob die Funktion steigend oder fallend ist.
 +<HTML>
 +<div id="exfuntwosol"></div>
 +</HTML>
 +</hidden>