randRangeNonZero(-3, 3) randRangeNonZero(-3, 3) randRangeNonZero(-3, 3) randFromArray(["f", "g", "h"]) randFromArray([["t", "u"], ["v", "w"], ["x", "y"]]) rand(5) [ generatePiecemealFunction(), function(x) { return B * x + C; }, function(x) { return B / 2 * x * x + A * x + C; }, function(x) { return B * sin(C * x / Math.PI) + A; }, function(x) { return B * pow(Math.E, C * x / 3) + A; } ][N] (function() { var xs = chooseXValues(FUNC, 1); if (xs.length >= 3) { return sortNumbers(shuffle(xs, 3)); } else { xs = chooseXValues(FUNC, 2); return sortNumbers(shuffle(xs, 3)); } })() _.map(X_EXAMPLES, FUNC) _.map(Y_EXAMPLES, function(y) { return round(2 * y) / 2; })
0.5

Alegeți oricare trei puncte ce aparțin graficului funcției Y = F(X), și completați tabelul astfel încât fiecare coloana reprezintă coordonatele unui punct.

Dacă este nevoie, rotunjiți numerele la 0 sau la CORRECTOFFSET.

graphInit({ range: 10, scale: 20, tickStep: 1, labelStep: 1, unityLabels: false, labelFormat: function(s) { return "\\small{" + s + "}"; }, axisArrows: "<->", axisLabels: [X, Y] }); plot(FUNC, [-10, 10], { stroke: BLUE });
X
F(X)
(function(){ var guess = []; var rows = $(".ttable tr"); for (var i = 1; i < 4; i++) { var x = $(rows[0].children[i]).find("input").val(); var y = $(rows[1].children[i]).find("input").val(); guess.push([x, y]); } return guess; })()
var attempted = 0; var correct = 0; var xs = []; var i = 0; var validatePoint = Khan.answerTypes.predicate.createValidatorFunctional(function(x, maxError) { var validateY = Khan.answerTypes.predicate.createValidatorFunctional(function(y, maxError) { if (abs(FUNC(x) - y) < maxError) { correct += 1; xs.push(x); return true; } }, {forms: 'decimal', inexact: true, maxError: maxError}); var result = validateY(guess[i][1]); return result.correct; }, {forms: 'decimal', inexact: true, maxError: CORRECTOFFSET}); for (i = 0; i < 3; ++i) { if ($.trim(guess[i][0]) !== "" && $.trim(guess[i][1]) !== "") { attempted += 1; validatePoint(guess[i][0]); } } if (attempted === 0) { return ""; } if (attempted < 3) { return i18n._("You must enter three points"); } xs = KhanUtil.sortNumbers(xs); var different = 1; for (var i = 0; i < correct - 1; ++i) { if (xs[i + 1] - xs[i] >= 0.5) { different += 1; } } return different === attempted;

O funcție poate fi privită în mai multe moduri, printre care un grafic sau un tabel de valori. În cazul nostru avem o reprezentare grafică și dorim să salvăm coordonatele unor puncte, într-un tabel.

Putem începe prin a alege trei numere. De exemplu, sa spunem că începem cu X_EXAMPLES[0], X_EXAMPLES[1], și X_EXAMPLES[2].

Acum putem afla ce numere reies dacă am calcula f(X) folosind cele 3 numere. Coordonatele unui punct sunt de forma (X, Y), unde X reprezintă unul din numerele noastre, iar Y reprezintă valoare ce a rezulta când am calculat f(X) = Y.

Așa cum putem vedea din grafic, un punct ce are pentru coordonata \blue{x} valoarea \blue{X_EXAMPLES[0]} va avea pentru coordonata \pink{y} valoarea \pink{Y_EXAMPLES_R[0]}. Altfel spus, F(\blue{X_EXAMPLES[0]}) = \pink{Y_EXAMPLES_R[0]}.

line([X_EXAMPLES[0], -11], [X_EXAMPLES[0], 11], { strokeWidth: 1, stroke: PINK }); circle([X_EXAMPLES[0], Y_EXAMPLES[0]], 0.2, { stroke: PINK, fill: PINK });

Pentru a completa tabelul vom pune \blue{X_EXAMPLES[0]} pe rândul x și \pink{Y_EXAMPLES_R[0]} pe rândul F(X) de sub el.

Putem face la fel și cu celelalte valori pe care le-am ales:

\quad \begin{align} F(\blue{X_EXAMPLES[1]}) &= \pink{Y_EXAMPLES_R[1]} \\ F(\blue{X_EXAMPLES[2]}) &= \pink{Y_EXAMPLES_R[2]} \end{align}

line([X_EXAMPLES[1], -11], [X_EXAMPLES[1], 11], { strokeWidth: 1, stroke: PINK }); circle([X_EXAMPLES[1], Y_EXAMPLES[1]], 0.2, { stroke: PINK, fill: PINK }); line([X_EXAMPLES[2], -11], [X_EXAMPLES[2], 11], { strokeWidth: 1, stroke: PINK }); circle([X_EXAMPLES[2], Y_EXAMPLES[2]], 0.2, { stroke: PINK, fill: PINK });

Iar un posibil răspuns pentru acest tabel ar fi:

X X_EXAMPLES[0] X_EXAMPLES[1] X_EXAMPLES[2]
F(X) Y_EXAMPLES_R[0] Y_EXAMPLES_R[1] Y_EXAMPLES_R[2]

Notă: Putem alege și alte numere cu care să începem, așa ca acest tabel nu este singura soluție.

rand(3) [ function(x) { return B * x + C; }, function(x) { return A * x + A * B + C; }, function(x) { return abs(B) * x * x + C; } ][N] [ coefficient(B) + X + " + " + C, coefficient(A) + "(" + X + " + " + B + ") + " + C, coefficient(abs(B)) + X + "^2 + " + C ][N] (function() { var xs = chooseXValues(FUNC, 1); if (xs.length >= 3) { return sortNumbers(shuffle(xs, 3)); } else { xs = chooseXValues(FUNC, 2); return sortNumbers(shuffle(xs, 3)); } })() [ coefficient(B) + "\\blue{" + X_EXAMPLES[0] + "} + " + C, coefficient(A) + "(\\blue{" + X_EXAMPLES[0] + "}" + B + ") + " + C, coefficient(abs(B)) + "\\blue{" + X_EXAMPLES[0] + "}^2 + " + C ][N] _.map(X_EXAMPLES, FUNC) _.map(Y_EXAMPLES, function(y) { return "" + round(10 * y) / 10; }) 0.1

Completați tabelul cu cel puțin trei puncte create cu funcția de mai jos. Introduceți valorile în tabel cu virgulă, dacă este cazul.

F(X) = FUNCSHOW

Putem începe prin a alege trei numere. De exemplu: X_EXAMPLES[0], X_EXAMPLES[1], și X_EXAMPLES[2].

Acum putem afla numerele ce vor rezulta dacă le vom introduce pe acestea în formula funcției. Adică pentru fiecare număr ales, putem afla numărul corespunzător lui înlocuind X în formula funcției F(X).

Pentru a afla ce număr îi corespunde lui \blue{X}=\blue{X_EXAMPLES[0]}.

Vom introduce numărul în formula funcției:

\quad F(\blue{X_EXAMPLES[0]}) = HINT

\quad F(\blue{X_EXAMPLES[0]}) = \pink{Y_EXAMPLES_R[0]}

Pentru a înregistra acest rezultat în tabel, vom scrie \blue{X_EXAMPLES[0]} pe rândul X și \pink{Y_EXAMPLES_R[0]} pe rândul F(X), aflat exact sub el.

Putem face la fel și pentru celelalte valori pe care le-am ales.

\quad \begin{align} F(\blue{X_EXAMPLES[1]}) &= \pink{Y_EXAMPLES_R[1]} \\ F(\blue{X_EXAMPLES[2]}) &= \pink{Y_EXAMPLES_R[2]} \end{align}

Iar un posibil răspuns pentru acest tabel ar fi:

X X_EXAMPLES[0] X_EXAMPLES[1] X_EXAMPLES[2]
F(X) Y_EXAMPLES_R[0] Y_EXAMPLES_R[1] Y_EXAMPLES_R[2]

Notă: Putem alege și alte numere cu care să începem, așa ca acest tabel nu este singura soluție.