// Numbas version: finer_feedback_settings {"name": "Adrian's copy of Reading a graph of a function.", "extensions": ["geogebra", "jsxgraph"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"parts": [{"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]]
", "type": "gapfill", "showCorrectAnswer": true, "variableReplacementStrategy": "originalfirst", "marks": 0, "scripts": {}, "variableReplacements": [], "showFeedbackIcon": true, "gaps": [{"mustBeReducedPC": 0, "correctAnswerStyle": "plain", "correctAnswerFraction": false, "scripts": {}, "type": "numberentry", "marks": "1", "showFeedbackIcon": true, "notationStyles": ["plain"], "mustBeReduced": false, "maxValue": "y1", "variableReplacementStrategy": "originalfirst", "minValue": "y1", "variableReplacements": [], "allowFractions": false, "showCorrectAnswer": true}, {"mustBeReducedPC": 0, "correctAnswerStyle": "plain", "correctAnswerFraction": false, "scripts": {}, "type": "numberentry", "marks": 1, "showFeedbackIcon": true, "notationStyles": ["plain", "en", "si-en"], "mustBeReduced": false, "maxValue": "x2", "variableReplacementStrategy": "originalfirst", "minValue": "x2", "variableReplacements": [], "allowFractions": false, "showCorrectAnswer": true}, {"mustBeReducedPC": 0, "correctAnswerStyle": "plain", "correctAnswerFraction": false, "scripts": {}, "type": "numberentry", "marks": "2", "showFeedbackIcon": true, "notationStyles": ["plain", "en", "si-en"], "mustBeReduced": false, "maxValue": "x2", "variableReplacementStrategy": "originalfirst", "minValue": "x2", "variableReplacements": [], "allowFractions": false, "showCorrectAnswer": true}]}], "statement": "Reading a graph.
", "variablesTest": {"condition": "max(abs(y1),abs(y2))<10", "maxRuns": 100}, "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).
", "variables": {"y1": {"templateType": "anything", "definition": "a*((x1+hshift)^3+(x1+hshift)+vshift)", "description": "", "name": "y1", "group": "Ungrouped variables"}, "a": {"templateType": "anything", "definition": "random(-1..1 except 0)", "description": "Coefficient of x^3
", "name": "a", "group": "Ungrouped variables"}, "x2": {"templateType": "anything", "definition": "random(-1..1 except x1)", "description": "", "name": "x2", "group": "Ungrouped variables"}, "vshift": {"templateType": "anything", "definition": "random(-2..2)", "description": "Random amount of vertifical shift for sake of variability.
", "name": "vshift", "group": "Ungrouped variables"}, "y2": {"templateType": "anything", "definition": "a*((x2+hshift)^3+(x2+hshift)+vshift)", "description": "", "name": "y2", "group": "Ungrouped variables"}, "x1": {"templateType": "anything", "definition": "random(0..1)", "description": "", "name": "x1", "group": "Ungrouped variables"}, "hshift": {"templateType": "anything", "definition": "random(-2..2)", "description": "Random amount of horizontal shift to create variability.
", "name": "hshift", "group": "Ungrouped variables"}}, "preamble": {"css": "", "js": ""}, "metadata": {"description": "Given a graph of some function f, the student is asked for values of $f$ and its inverse. Function is cubic and invertible.
", "licence": "Creative Commons Attribution 4.0 International"}, "tags": [], "functions": {"eqnline": {"type": "html", "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// 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\nreturn div;"}}, "ungrouped_variables": ["a", "hshift", "vshift", "x1", "x2", "y1", "y2"], "rulesets": {}, "extensions": ["geogebra", "jsxgraph"], "variable_groups": [], "name": "Adrian's copy of Reading a graph of a function.", "type": "question", "contributors": [{"name": "Adrian Jannetta", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/164/"}]}]}], "contributors": [{"name": "Adrian Jannetta", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/164/"}]}