// Numbas version: finer_feedback_settings {"name": "Algebra: functions, determining function values from graph", "extensions": ["geogebra", "jsxgraph"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"name": "Algebra: functions, determining function values from graph", "advice": "
(i) To find $f(\\var{x1})$, you start at $\\var{x1}$ on the $x$-axis, go up or down until you reach the blue line, and then look at the $y$-coordinate. This $y$-coordinate is the answer. In this question, after going up/down from $\\var{x1}$, we reach the $y$-coordinate $\\var{y1}$, so the answer is $f(\\var{x1})=\\var{y1}$.
\n(ii) There are two options. The first option (which is not efficient) is trial-and-error: pick some random value of $x$ and determine $f(x)$. If $f(x) = \\var{y2}$, then your pick is the answer. If not, then try a different value of $x$, hopefully getting closer and closer each time. The second (and better) option is to 'work backwards' - we know what $f(x)$ should be, which means we know what the $y$-coordinate should be. So start at $\\var{y2}$ on the $y$-axis, go left or right until you reach the blue line, and look at the $x$-coordinate. In this question, after going left/right from $\\var{y2}$, we reach the $x$-coordinate $\\var{x2}$, so this is the answer. You can check this is correct: what is $f(\\var{x2})$? It is $\\var{y2}$, as we wanted!
\n(iii) This question is asking exactly the same thing as the question in (ii), but is phrased differently. This is because the definition of $f^{-1}$ is that it is the function which un-does what $f$ does. For example, we know that $f(\\var{x1})=\\var{y1}$ - therefore, automatically, $f^{-1}(\\var{y1})$ has to be $\\var{x1}$. Re-worded, $f$ maps $\\var{x1}$ to $\\var{y1}$, so because $f^{-1}$ un-does this, it means $f^{-1}$ maps $\\var{y1}$ back to $\\var{x1}$. Back to the question at hand, it asked what $f^{-1}(\\var{y2})$ is. By definition, this means we want to know what value of $x$ is needed to get $f(x) = \\var{y2}$, which is exactly what was asked in (ii).
", "variable_groups": [], "ungrouped_variables": ["a", "hshift", "vshift", "x1", "x2", "y1", "y2"], "functions": {"eqnline": {"language": "javascript", "parameters": [["a", "number"], ["h", "number"], ["v", "number"]], "definition": "// This functions plots a cubic with a certain number of\n// stationary points and roots.\n// It creates the board, sets it up, then returns an\n// HTML div tag containing the board.\n\n\n// Max and min x and y values for the axis.\nvar x_min = -6;\nvar x_max = 6;\nvar y_min = -10;\nvar y_max = 10;\n\n\n// First, make the JSXGraph board.\nvar div = Numbas.extensions.jsxgraph.makeBoard(\n '500px',\n '600px',\n {\n boundingBox: [x_min,y_max,x_max,y_min],\n axis: false,\n showNavigation: true,\n grid: true\n }\n);\n\n\n\n\n// div.board is the object created by JSXGraph, which you use to \n// manipulate elements\nvar board = div.board; \n\n// create the x-axis.\nvar xaxis = board.create('line',[[0,0],[1,0]], { strokeColor: 'black', fixed: true});\nvar xticks = board.create('ticks',[xaxis,1],{\n drawLabels: true,\n label: {offset: [-4, -10]},\n minorTicks: 0\n});\n\n// create the y-axis\nvar yaxis = board.create('line',[[0,0],[0,1]], { strokeColor: 'black', fixed: true });\nvar yticks = board.create('ticks',[yaxis,1],{\ndrawLabels: true,\nlabel: {offset: [-20, 0]},\nminorTicks: 0\n});\n\n\n\n\n// Plot the function.\n board.create('functiongraph',\n [function(x){ return a*(Math.pow(x+h,3)+(x+h)+v);},x_min,x_max]);\n\n\n\n\n\n\nreturn div;", "type": "html"}}, "extensions": ["geogebra", "jsxgraph"], "variablesTest": {"condition": "max(abs(y1),abs(y2))<10", "maxRuns": 100}, "type": "question", "statement": "Reading a graph.
", "preamble": {"js": "", "css": ""}, "tags": [], "parts": [{"customMarkingAlgorithm": "", "sortAnswers": false, "scripts": {}, "prompt": "{eqnline(a, hshift, vshift)}
\nAbove is the graph of some function $f$.
\nWhat is $f(\\var{x1})$? [[0]]
\nWhat value of $x$ do you need to get $f(x) = \\var{y2}$? [[1]]
\nWhat is $f^{-1}(\\var{y2})$? [[2]]
", "extendBaseMarkingAlgorithm": true, "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "type": "gapfill", "showFeedbackIcon": true, "marks": 0, "unitTests": [], "gaps": [{"customMarkingAlgorithm": "", "correctAnswerStyle": "plain", "scripts": {}, "maxValue": "y1", "mustBeReducedPC": 0, "extendBaseMarkingAlgorithm": true, "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "type": "numberentry", "showFeedbackIcon": true, "notationStyles": ["plain"], "marks": "1", "unitTests": [], "allowFractions": false, "correctAnswerFraction": false, "variableReplacements": [], "mustBeReduced": false, "minValue": "y1"}, {"customMarkingAlgorithm": "", "correctAnswerStyle": "plain", "scripts": {}, "maxValue": "x2", "mustBeReducedPC": 0, "extendBaseMarkingAlgorithm": true, "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "type": "numberentry", "showFeedbackIcon": true, "notationStyles": ["plain", "en", "si-en"], "marks": 1, "unitTests": [], "allowFractions": false, "correctAnswerFraction": false, "variableReplacements": [], "mustBeReduced": false, "minValue": "x2"}, {"customMarkingAlgorithm": "", "correctAnswerStyle": "plain", "scripts": {}, "maxValue": "x2", "mustBeReducedPC": 0, "extendBaseMarkingAlgorithm": true, "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "type": "numberentry", "showFeedbackIcon": true, "notationStyles": ["plain", "en", "si-en"], "marks": "2", "unitTests": [], "allowFractions": false, "correctAnswerFraction": false, "variableReplacements": [], "mustBeReduced": false, "minValue": "x2"}], "variableReplacements": []}], "rulesets": {}, "metadata": {"description": "A graph of an (invertible) cubic is given. The question is to determine values of $f$ from graph.
", "licence": "Creative Commons Attribution 4.0 International"}, "variables": {"vshift": {"templateType": "anything", "description": "Random amount of vertifical shift for sake of variability.
", "definition": "random(-2..2)", "group": "Ungrouped variables", "name": "vshift"}, "x1": {"templateType": "anything", "description": "", "definition": "random(0..1)", "group": "Ungrouped variables", "name": "x1"}, "a": {"templateType": "anything", "description": "Coefficient of x^3
", "definition": "random(-1..1 except 0)", "group": "Ungrouped variables", "name": "a"}, "y2": {"templateType": "anything", "description": "", "definition": "a*((x2+hshift)^3+(x2+hshift)+vshift)", "group": "Ungrouped variables", "name": "y2"}, "x2": {"templateType": "anything", "description": "", "definition": "random(-1..1 except x1)", "group": "Ungrouped variables", "name": "x2"}, "hshift": {"templateType": "anything", "description": "Random amount of horizontal shift to create variability.
", "definition": "random(-2..2)", "group": "Ungrouped variables", "name": "hshift"}, "y1": {"templateType": "anything", "description": "", "definition": "a*((x1+hshift)^3+(x1+hshift)+vshift)", "group": "Ungrouped variables", "name": "y1"}}, "contributors": [{"name": "Lovkush Agarwal", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1358/"}, {"name": "Xiaodan Leng", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/2146/"}]}]}], "contributors": [{"name": "Lovkush Agarwal", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1358/"}, {"name": "Xiaodan Leng", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/2146/"}]}