// Numbas version: finer_feedback_settings {"name": "MEC 2025/26", "metadata": {"description": "

Skills Audit for Maths and Stats: MEC

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "duration": 0, "percentPass": 0, "showQuestionGroupNames": false, "shuffleQuestionGroups": false, "showstudentname": true, "question_groups": [{"name": "Group", "pickingStrategy": "all-ordered", "pickQuestions": 1, "questionNames": ["", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""], "variable_overrides": [[], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], [], []], "questions": [{"name": "AC13 Expand Double Brackets (Hard)", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Poppy Jeffries", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21275/"}, {"name": "Lauren Desoysa", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21504/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Expand two brackets involving powers of $x$.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Expand the brackets and simplify

", "advice": "

To expand the brackets $\\simplify{({a[1]}x^{b[1]}+{a[2]}x^{b[2]})({a[3]}x^{b[3]}+{c[1]}x^{b[4]})}$ We first multiply all the terms in the left bracket by all the terms in the right bracket. This gives us

\n

\\[\\var{a[1]}x^\\var{b[1]}\\times\\var{a[3]}x^\\var{b[3]}+\\var{a[1]}x^\\var{b[1]}\\times\\var{c[1]}x^\\var{b[4]}+\\var{a[2]}x^\\var{b[2]}\\times\\var{a[3]}x^\\var{b[3]}+\\var{a[2]}x^\\var{b[2]}\\times\\var{c[1]}x^\\var{b[4]}\\]

\n

We can then simplify to give us the final answer of

\n

$\\simplify{{a[1]*a[3]}*x^{b[1]+b[3]}+{a[1]*c[1]}*x^{b[1]+b[4]}+{a[2]*a[3]}*x^{b[2]+b[3]}+{a[2]*c[1]}*x^{b[2]+b[4]}}.$

\n


Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "repeat(random(-5..10 except [0]),5\n)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "repeat(random([-5,-9/2,-4,7/2,-3,-5/2,-2,-3/2,-1,-1/2,1/2,1,3/2,2,5/2,3,7/2,4,9/2,5]),5)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "shuffle(1..6)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "c", "b"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\simplify{({a[1]}x^{b[1]}+{a[2]}x^{b[2]})({a[3]}x^{b[3]}+{c[1]}x^{b[4]})}=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{a[1]*a[3]}*x^{b[1]+b[3]}+{a[1]*c[1]}*x^{b[1]+b[4]}+{a[2]*a[3]}*x^{b[2]+b[3]}+{a[2]*c[1]}*x^{b[2]+b[4]}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AC15 Algebraic substitution", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Substitute values into an algebraic expression and calculate the result.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Evaluate the following expression,

\n

\\[\\simplify{p^{n}+{a}*r*t+{c}},\\]

\n

when $p = \\var{pval}$, $r = \\var{rval}$, and $t = \\var{tval}$.

", "advice": "

In order to evaluate $\\simplify{p^{n}+{a}*r*t+{c}},$ with the given values, $p = \\var{pval}$, $r = \\var{rval}$, and $t = \\var{tval}$, we replace each instance of that letter with its corresponding value and then apply the rules of BIDMAS:

\n

\\[\\var{pval}^\\var{n}+\\var{a}\\times \\var{rval} \\times \\var{tval} + \\var{c}\\]

\n

Which gives the answer $\\var{ans}$.

\n

Follow this link for more help on tackling these kind of questions.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2 .. 3#1)", "description": "", "templateType": "randrange", "can_override": false}, "a": {"name": "a", "group": "Ungrouped variables", "definition": "random(2 .. 9#1)", "description": "", "templateType": "randrange", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "Random(-6..6 except 0)", "description": "", "templateType": "anything", "can_override": false}, "pval": {"name": "pval", "group": "Ungrouped variables", "definition": "random(2 .. 9#1)", "description": "", "templateType": "randrange", "can_override": false}, "rval": {"name": "rval", "group": "Ungrouped variables", "definition": "random(-9 .. -2#1)", "description": "", "templateType": "randrange", "can_override": false}, "tval": {"name": "tval", "group": "Ungrouped variables", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "ans": {"name": "ans", "group": "Ungrouped variables", "definition": "{pval}^{n}+{a}*{rval}*{tval}+{c}", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["n", "a", "c", "pval", "rval", "tval", "ans"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "{pval}^{n}+{a}*{rval}*{tval}+{c}", "maxValue": "{pval}^{n}+{a}*{rval}*{tval}+{c}", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AC20 Multiplication of algebraic fractions 1", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}, {"name": "Lauren Richards", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1589/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Oliver Spenceley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23557/"}], "tags": ["adding and subtracting fractions", "adding fractions", "converting between decimals and fractions", "converting integers to fractions", "Fractions", "fractions", "integers", "manipulation of fractions", "subtracting fractions", "taxonomy"], "metadata": {"description": "

Manipulate fractions in order to add and subtract them. The difficulty escalates through the inclusion of a whole integer and a decimal, which both need to be converted into a fraction before the addition/subtraction can take place. 

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

Evaluate the following multiplication, giving the fraction in its simplest form.

\n

\\[\\frac{\\var{a}}{y^\\var{n2}}\\times\\frac{y^\\var{n1}}{\\var{b}}\\]

", "advice": "

To multiply two fractions you just multiply the numerators and multiply the denominators. This means we have,

\n

\\[\\frac{\\var{a}}{y^\\var{n2}}\\times\\frac{y^\\var{n1}}{\\var{b}}=\\frac{\\var{a}\\times{y^\\var{n1}}}{y^\\var{n2}\\times\\var{b}}=\\frac{\\var{a/gcd_ab}\\times{y^\\var{n1-n2}}}{\\var{b/gcd_ab}}\\]

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(1..30)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(1..30)", "description": "", "templateType": "anything", "can_override": false}, "n1": {"name": "n1", "group": "Ungrouped variables", "definition": "random(2..4 except n2)", "description": "", "templateType": "anything", "can_override": false}, "n2": {"name": "n2", "group": "Ungrouped variables", "definition": "random(1..2)", "description": "", "templateType": "anything", "can_override": false}, "gcd_ab": {"name": "gcd_ab", "group": "Ungrouped variables", "definition": "gcd(a,b)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "n1", "n2", "gcd_ab"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": "fraction {\n display: inline-block;\n vertical-align: middle;\n}\nfraction > numerator, fraction > denominator {\n float: left;\n width: 100%;\n text-align: center;\n line-height: 2.5em;\n}\nfraction > numerator {\n border-bottom: 1px solid;\n padding-bottom: 5px;\n}\nfraction > denominator {\n padding-top: 5px;\n}\nfraction input {\n line-height: 1em;\n}\n\nfraction .part {\n margin: 0;\n}\n\n.table-responsive, .fractiontable {\n display:inline-block;\n}\n.fractiontable {\n padding: 0; \n border: 0;\n}\n\n.fractiontable .tddenom \n{\n text-align: center;\n}\n\n.fractiontable .tdnum \n{\n border-bottom: 1px solid black; \n text-align: center;\n}\n\n\n.fractiontable tr {\n height: 3em;\n}\n"}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]] [[1]]

", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{a/gcd_ab}y^{n1-n2}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "mustmatchpattern": {"pattern": "$n`? * $v`? ^ $n`?", "partialCredit": 0, "message": "", "nameToCompare": "", "warningTime": "submission"}, "valuegenerators": [{"name": "y", "value": ""}]}, {"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{b/gcd_ab}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "mustmatchpattern": {"pattern": "$n", "partialCredit": 0, "message": "", "nameToCompare": "", "warningTime": "submission"}, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AC21 Multiplication of algebraic fractions 2", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Simplifying first is essential in terms of managing expressions that might need factorising.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Expand and simplify $\\displaystyle{\\var{LeftMul}\\times\\var{RightMul}}.$

", "advice": "

Before we multiply the fractions together first lets check if we can do any cancellation. Notice that $\\var{RightMulBottom}$ has a factor of $\\var{Num}$ so we can cancel this straight away.

\n

We also have a factor of $x$ in both $\\var{QuadCoeff[0]}x^2+\\var{QuadCoeff[1]}x$ and $\\var{RightMulTop}$ so we're now left with multiplying

\n

\\[\\frac1{\\var{QuadCoeff[0]}x+\\var{QuadCoeff[1]}}\\times\\frac{\\simplify[all,expandBrackets]{(x+{Lin1Coeff})*({QuadCoeff[0]}x+{QuadCoeff[1]})}}{\\var{Lin2Coeff[0]}x+\\var{Lin2Coeff[1]}}.\\]

\n

We're not necesserily done with cancellation though! To make sure that a fraction with a quadratic is simplified we have to factorise it to make sure there are no linear factors we can cancel. In this case we have
\\[\\simplify[all,expandBrackets]{(x+{Lin1Coeff})*({QuadCoeff[0]}x+{QuadCoeff[1]})}={(x+\\var{Lin1Coeff})(\\var{QuadCoeff[0]}x+\\var{QuadCoeff[1]})}.\\]

\n

This gives us one last factor to cancel and then we can finally multiply whats left of each fraction to give us a final answer of

\n

\\[\\var{ans}.\\]

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"QuadCoeff": {"name": "QuadCoeff", "group": "Ungrouped variables", "definition": "[random(1..6),random(1..6)]", "description": "", "templateType": "anything", "can_override": false}, "Num": {"name": "Num", "group": "Ungrouped variables", "definition": "random(2..6)", "description": "", "templateType": "anything", "can_override": false}, "Lin2Coeff": {"name": "Lin2Coeff", "group": "Ungrouped variables", "definition": "[random(1..6),random(1..6)]", "description": "", "templateType": "anything", "can_override": false}, "Lin1Coeff": {"name": "Lin1Coeff", "group": "Ungrouped variables", "definition": "random(1..6 except Lin2Coeff[1]/Lin2Coeff[0])", "description": "", "templateType": "anything", "can_override": false}, "Lin1": {"name": "Lin1", "group": "Ungrouped variables", "definition": "\"x\"+\"+\"+Lin1Coeff", "description": "", "templateType": "anything", "can_override": false}, "Lin2": {"name": "Lin2", "group": "Ungrouped variables", "definition": "Lin2Coeff[0]+\"x\"+\"+\"+Lin2Coeff[1]", "description": "", "templateType": "anything", "can_override": false}, "Quad": {"name": "Quad", "group": "Ungrouped variables", "definition": "QuadCoeff[0]+\"x^2+\"+QuadCoeff[1]+\"x\"", "description": "", "templateType": "anything", "can_override": false}, "LeftMul": {"name": "LeftMul", "group": "Ungrouped variables", "definition": "expression(Num+\"/(\"+Quad+\")\")", "description": "", "templateType": "anything", "can_override": false}, "RightMulTop": {"name": "RightMulTop", "group": "Ungrouped variables", "definition": "simplify(expression(\"(\"+Quad+\")*(\"+Lin1+\")\"),[\"expandBrackets\",\"all\"])", "description": "", "templateType": "anything", "can_override": false}, "RightMulBottom": {"name": "RightMulBottom", "group": "Ungrouped variables", "definition": "simplify(expression(Num+\"*(\"+Lin2+\")\"),[\"expandBrackets\",\"all\"])", "description": "", "templateType": "anything", "can_override": false}, "RightMul": {"name": "RightMul", "group": "Ungrouped variables", "definition": "expression(\"(\"+string(RightMulTop)+\")\"+\"/\"+\"(\"+string(RightMulBottom)+\")\")", "description": "", "templateType": "anything", "can_override": false}, "Ans": {"name": "Ans", "group": "Ungrouped variables", "definition": "expression(\"(\"+Lin1+\")/(\"+Lin2+\")\")", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["QuadCoeff", "Num", "Lin2Coeff", "Lin1Coeff", "Lin1", "Lin2", "Quad", "LeftMul", "RightMulTop", "RightMulBottom", "RightMul", "Ans"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{ans}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": true, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "mustmatchpattern": {"pattern": "(`+-$n`?*x+`+-$n`?)/(`+-$n`?*x+`+-$n`?)", "partialCredit": 0, "message": "", "nameToCompare": "", "warningTime": "submission"}, "valuegenerators": []}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AF01 Sigma Notation", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Basic calculation from a sum given in Sigma notation.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate:

\n

\\[\\displaystyle{\\Sigma_{n=1}^3} \\var{b}n.\\]

\n

", "advice": "

The sigma notation $\\displaystyle\\sum_{n=1}^{3}\\var{b}n$ is asking us to find the sum of the first three terms of the sequence $\\var{b}n$

\n

\\[\\begin{split}\\Sigma_{n=1}^3 \\var{b}n &\\, = (\\var{b}\\times 1) + (\\var{b}\\times 2) + (\\var{b}\\times 3) \\\\ &\\, = \\var{b1} + \\var{b2} + \\var{b3} \\\\ &\\, = \\var{sum}.\\end{split}\\]

\n

Use this link to find resources to help you revise sigma notation.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"b": {"name": "b", "group": "Ungrouped variables", "definition": "random(2 .. 9#1)", "description": "", "templateType": "randrange", "can_override": false}, "b1": {"name": "b1", "group": "Ungrouped variables", "definition": "b*1", "description": "", "templateType": "anything", "can_override": false}, "b2": {"name": "b2", "group": "Ungrouped variables", "definition": "b*2", "description": "", "templateType": "anything", "can_override": false}, "b3": {"name": "b3", "group": "Ungrouped variables", "definition": "b*3", "description": "", "templateType": "anything", "can_override": false}, "sum": {"name": "sum", "group": "Ungrouped variables", "definition": "b1+b2+b3", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["b", "b1", "b2", "b3", "sum"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{sum}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AF02 Straight Line Graphs", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Calculating gradient and finding intercept from a geogebra graph.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

{app}
Find the gradient of the line.


", "advice": "

Firstly draw a right angled 'step' from left to right. This triangle can be anywhere, but it is more helpful for it to have corners on the vertices (whole number points) of the graph and it is easier to calculate with postive numbers.

\n

{app_advice}

\n

Before we start to calculate, notice that the line is {uod}, so the gradient will be {pon} and the line is {sos}, so the absolute value of the number will be {mol}.

Now find the coordinates of the places your triangle meets the line

\n

$(x_1,y_1)=(\\var{ax},\\var{ay})$ and $(x_2,y_2)=(\\var{bx},\\var{by})$

\n

We need to compare the 'rise on the y-axis' to the 'run across the x-axis', we can say that:

\n

$\\text{gradient} = \\frac{\\text{rise}}{\\text{run}}$

\n

This is equivalent to using the formula:

$  m = \\frac{y_2 - y_1}{x_2 - x_1} $

\n

and substitute the coordinates of the vertices of the triangle:

$\\begin{split} &\\, m = \\frac{\\var{by} - \\var{ay}}{\\var{bx} - \\var{ax}} \\\\  
&\\, = \\frac{\\var{by-ay}}{\\var{bx-ax}} \\\\ 
&\\,  = \\var[fractionNumbers]{m} \\\\
\\end{split} $

\n

Use this link to find resources to help you revise straight line graphs and how to find the gradient of them.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"app": {"name": "app", "group": "Ungrouped variables", "definition": "geogebra_applet(\n 800,500,\n [\n A: [\n definition: p1,\n label_visible: false,\n visible: false\n ],\n B: [\n definition: p2,\n label_visible: false,\n visible: false \n ],\n line: [\n definition: \"Line(A,B)\",\n label_visible: false\n ]\n ]\n)", "description": "", "templateType": "anything", "can_override": false}, "m": {"name": "m", "group": "Ungrouped variables", "definition": "(ay-by)/(ax-bx)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "ay-m*ax", "description": "", "templateType": "anything", "can_override": false}, "P1": {"name": "P1", "group": "Ungrouped variables", "definition": "vector(ax, ay)", "description": "", "templateType": "anything", "can_override": false}, "P2": {"name": "P2", "group": "Ungrouped variables", "definition": "vector(bx,by)", "description": "", "templateType": "anything", "can_override": false}, "uod": {"name": "uod", "group": "Ungrouped variables", "definition": "if(m=0,'horizontal',if(m=abs(m),'going up','going down'))", "description": "

if(m=abs(m),'positive','negative')

", "templateType": "anything", "can_override": false}, "ax": {"name": "ax", "group": "Ungrouped variables", "definition": "random(0,1)", "description": "", "templateType": "anything", "can_override": false}, "ay": {"name": "ay", "group": "Ungrouped variables", "definition": "random(0,1,2,3)", "description": "", "templateType": "anything", "can_override": false}, "bx": {"name": "bx", "group": "Ungrouped variables", "definition": "random(ax+1..3) \n", "description": "", "templateType": "anything", "can_override": false}, "by": {"name": "by", "group": "Ungrouped variables", "definition": "random(0..4 except ay)\n", "description": "", "templateType": "anything", "can_override": false}, "app_advice": {"name": "app_advice", "group": "Ungrouped variables", "definition": "geogebra_applet(\n 800,500,\n [\n A: [\n definition: p1,\n label_visible: false,\n visible: true\n ],\n B: [\n definition: p2,\n label_visible: false,\n visible: true \n ],\n \n C: [\n definition: p3,\n label_visible: false,\n visible: false \n ],\n \n line1: [\n definition: \"Line(A,B)\",\n label_visible: false,\n visible: true\n ],\n \n line2: [\n definition: \"Segment(A,C)\",\n label_visible: false,\n visible: true\n ],\n \n \n \n line3: [\n definition: \"Segment(C,B)\",\n label_visible: false,\n visible: true\n ]\n ]\n)", "description": "", "templateType": "anything", "can_override": false}, "p3": {"name": "p3", "group": "Ungrouped variables", "definition": "vector(bx,ay)", "description": "", "templateType": "anything", "can_override": false}, "pon": {"name": "pon", "group": "Ungrouped variables", "definition": "if(m=0,'zero',if(m=abs(m),'a positive number','a negative number'))", "description": "", "templateType": "anything", "can_override": false}, "sos": {"name": "sos", "group": "Ungrouped variables", "definition": "if(m=0,'horizontal',if(abs(m)<1,'shallow','steep'))", "description": "", "templateType": "anything", "can_override": false}, "mol": {"name": "mol", "group": "Ungrouped variables", "definition": "if(m=0,'zero',if(abs(m)<1,'less than 1','greater than or equal to 1'))", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "m<>1", "maxRuns": 100}, "ungrouped_variables": ["app", "m", "c", "P1", "P2", "uod", "ax", "ay", "bx", "by", "app_advice", "p3", "pon", "sos", "mol"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "alternatives": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "

It looks like you have incorrectly rounded this answer.  You might want to look at some resources on rounded decimals.  You can also leave your answer in fraction form as
$\\var[fractionNumbers]{m}$

", "useAlternativeFeedback": false, "answer": "{m}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.1", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "answer": "{m}", "showPreview": true, "checkingType": "dp", "checkingAccuracy": "1", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AF03 Shapes of quadratics", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Multiple choice - select the quadratic graph.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Which of the following is the graph $y=x^2$.

", "advice": "

Use this link to find some resources to help you familiarise yourself with these graphs.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": [], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "1_n_2", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minMarks": 0, "maxMarks": 0, "shuffleChoices": true, "displayType": "radiogroup", "displayColumns": 0, "showCellAnswerState": true, "choices": ["{geogebra_applet('https://www.geogebra.org/m/tpfzv3w7')}", "{geogebra_applet('https://www.geogebra.org/m/zftpwq64')}", "{geogebra_applet('https://www.geogebra.org/m/we3gngqa')}", "{geogebra_applet('https://www.geogebra.org/m/cadkup6r')}"], "matrix": ["1", 0, 0, 0], "distractors": ["", "", "", ""]}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AF05 Function notation", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Evaluating a linear function for a given value of $x$.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Given $f(x)=\\simplify{{m}x+{c}}$, find $f(\\var{n})$.

", "advice": "

If $f(x)=\\simplify{{m}x+{c}}$, to find $f(\\var{n})$ we need to evaluate $f(x)$ when $x=\\var{n}$:

\n

\\[ \\begin{split} f(\\var{n}) &\\,= \\simplify[alwaysTimes]{{m}({n})+{c}} \\\\ &\\,= \\simplify[!collectNumbers]{{m*n}+{c}} \\\\ &\\,= \\simplify{{m*n+c}}. \\end{split} \\]

\n

Use this link to find resources to help you revise function notation.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"m": {"name": "m", "group": "Ungrouped variables", "definition": "random(2..9)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(-9..9 except [0,m])", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(-9..9 except [0,1])", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["m", "c", "n"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$f(\\var{n})=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{m*n+c}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AF08 Composite functions", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Finding composite functions of 2 linear functions.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

If $f(x)=\\simplify{{m}x+{c}}$ and $g(x)=\\simplify{{n}x+{d}}$, find expressions for $f\\circ g(x)$ and $g \\circ f(x)$.

\n

\n

Recall: $f \\circ g(x) \\equiv f(g(x))$ and $g \\circ f(x) \\equiv g(f(x))$.

", "advice": "

\n

To find the composition $f \\circ g(x)$ we are substituting the expression for $g(x)$ into the function $f(x)$, replacing the $x$-terms with the function $g(x)$. Similarly, to find the composition $g \\circ f(x)$ we are substituting the expression for $f(x)$ into the function $g(x)$, replacing the $x$-terms with the function $f(x)$.

\n

So, for $f(x)=\\simplify{{m}x+{c}}$ and $g(x)=\\simplify{{n}x+{d}}$,

\n

\\[ \\begin{split} f \\circ g(x) \\equiv f(g(x)) &\\,=  \\simplify{{m}({n}x+{d})+{c}} \\\\ &\\,=\\simplify[!collectNumbers,unitFactor]{{m*n}x+{m*d}+{c}} \\\\ &\\,=\\simplify{{m*n}x+{m*d+c}}, \\end{split} \\]

\n

and 

\n

\\[ \\begin{split} g \\circ f(x) \\equiv g(f(x)) &\\,=  \\simplify{{n}({m}x+{c})+{d}} \\\\ &\\,=\\simplify[!collectNumbers,unitFactor]{{m*n}x+{n*c}+{d}} \\\\ &\\,=\\simplify{{m*n}x+{n*c+d}}. \\end{split} \\]

\n

Use this link to find resources to help you revise how to find composite functions.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"m": {"name": "m", "group": "Ungrouped variables", "definition": "random(2..5 except n)", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2..5)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(-7..7 except 0)", "description": "", "templateType": "anything", "can_override": false}, "d": {"name": "d", "group": "Ungrouped variables", "definition": "random(-7..7 except [0,c])", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["n", "m", "c", "d"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$f \\circ g(x)=$[[0]]

\n

$g \\circ f(x)=$[[1]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{m*n}x+{m*d+c}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}, {"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{n*m}x+{n*c+d}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AL02 Logs - rules 1", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Solving $a\\log(x)+\\log(b)=\\log(c)$ for $x$, where $a$, $b$ and $c$ are positive integers.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Solve for $x$:

\n

\\[ \\var{a}\\log(x)+\\log(\\var{b})=\\log(\\var{c}). \\]

", "advice": "

To solve $\\var{a}\\log(x)+\\log(\\var{b})=\\log(\\var{c})$ for $x$, we want to use the following logarithm rules:

\n\n

Hence, 

\n

\\[ \\begin{split} \\var{a}\\log(x)+\\log(\\var{b}) &\\,=\\log(\\var{c}) \\\\ \\log(x^\\var{a})+\\log(\\var{b}) &\\,= \\log(\\var{c}) \\\\ \\log(\\var{b}x^\\var{a}) &\\,= \\log(\\var{c}). \\end{split} \\]

\n

If $\\log(a)=\\log(b)$ then this implies $a=b$. Therefore,

\n

\\[  \\begin{split} \\var{b}x^\\var{a} &\\,=\\var{c} \\\\ x^\\var{a} &\\,= \\simplify[fractionNumbers]{{c/b}} \\\\ x &\\,= \\simplify[fractionNumbers]{({c/b})^(1/{a})} \\\\ x &\\,= \\var{sol} \\text{ (2 d.p.)}\\end{split} \\]

\n

Use this link to find rsources to help you revise how the rules of logarithms to help you solve logarithmic equations.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(2..5)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(2..9)", "description": "", "templateType": "anything", "can_override": false}, "sol": {"name": "sol", "group": "Ungrouped variables", "definition": "precround((c/b)^(1/a),2)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(2..40 except [b,b^(a+1)])", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "c", "sol"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$x=$ [[0]] (Give you answer to 2 decimal places where necessary)

", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{sol}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AS01 Solve linear equations", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Ben Brawn", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/605/"}, {"name": "heike hoffmann", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/2960/"}, {"name": "sean hunte", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3167/"}, {"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Solve linear equations with unkowns on both sides. Including brackets and fractions.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "", "advice": "

Given $\\simplify{{m}w-{n} = {p}w+{q}}$, we can get all the $w$'s on the left hand side and all the numbers on the right hand side, and then divide both sides by the coefficient of $w$ to get $w$ by itself.

\n

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
 
$\\simplify{{m}w+{n}}$$=$$\\simplify{{p}w+{q}}$
 
$\\simplify[!cancelTerms,unitFactor]{{m}w-{n}-{p}w}$$=$$\\simplify[!cancelTerms,unitFactor]{{p}w+{q}-{p}w}$
 
$\\simplify{{m-p}w-{n}}$$=$$\\var{q}$
 
$\\var{m-p}w-\\var{n}+\\var{n}$$=$$\\var{q}+\\var{n}$
 
$\\var{m-p}w$$=$$\\var{q+n}$
 
$\\displaystyle{\\frac{\\var{m-p}w}{\\var{m-p}}}$$=$$\\displaystyle{\\frac{\\var{q+n}}{\\var{m-p}}}$
 
$w$$=$$\\displaystyle{\\simplify{{q+n}/{m-p}}} = \\var{precround(ansA,1)} \\text{ to 1 dp}$
\n


Use this link to find resources to help you revise how to solve linear equations

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"p": {"name": "p", "group": "Ungrouped variables", "definition": "random(1..3)", "description": "", "templateType": "anything", "can_override": false}, "m": {"name": "m", "group": "Ungrouped variables", "definition": "random(2..12)", "description": "", "templateType": "anything", "can_override": false}, "q": {"name": "q", "group": "Ungrouped variables", "definition": "random(1..12)", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(1..12)", "description": "", "templateType": "anything", "can_override": false}, "l": {"name": "l", "group": "Ungrouped variables", "definition": "random(2..12)", "description": "", "templateType": "anything", "can_override": false}, "ansA": {"name": "ansA", "group": "Ungrouped variables", "definition": "(q+n)/(m-p)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["l", "m", "n", "p", "q", "ansA"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Solve  $\\simplify{({m}w-{n}) = {p}w+{q}}$

\n

$w=$ [[0]]

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "ansA", "maxValue": "ansA", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "1", "precisionPartialCredit": "100", "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": true, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AS03 Simultaneous Equations (2 linear)", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}], "tags": ["Category: Simultaneous equations"], "metadata": {"description": "

Solving a pair of linear simultaneous equations, giving answers as integers or fractions.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Solve the simultaneous equations for x and y, giving your answers as integers or fractions, but not decimals.

\n

\\[ \\begin{split} \\simplify[!noLeadingminus,unitFactor]{{a}x+{b}y} &\\,=\\var{c} \\\\ \\simplify[!noLeadingminus,unitFactor]{{a1}x +{b1}y}  &\\,=\\var{c1} \\end{split}\\]

", "advice": "

\\[\\begin{split}\\simplify[!noLeadingminus,unitFactor]{{a}x+{b}y} &\\,=\\var{c} \\qquad\\qquad&(1)\\\\ \\simplify[!noLeadingminus,unitFactor]{{a1}x +{b1}y}  &\\,=\\var{c1} \\qquad\\qquad&(2)\\end{split}\\]

\n

{advice1}

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(-2..8 except [0,1])", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(-8..8 except [0,1,a])", "description": "", "templateType": "anything", "can_override": false}, "a1": {"name": "a1", "group": "Ungrouped variables", "definition": "random(-5..8 except [0,1])", "description": "", "templateType": "anything", "can_override": false}, "b1": {"name": "b1", "group": "Ungrouped variables", "definition": "random(2..10 except [round(a1*b/a),b,0,1])", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(-6..6 except 0)", "description": "", "templateType": "anything", "can_override": false}, "c1": {"name": "c1", "group": "Ungrouped variables", "definition": "random(-7..7 except 0)", "description": "", "templateType": "anything", "can_override": false}, "aorsb": {"name": "aorsb", "group": "Ungrouped variables", "definition": "if(b*abs(b1)=b1*abs(b),'subtract','add')", "description": "", "templateType": "anything", "can_override": false}, "torfb": {"name": "torfb", "group": "Ungrouped variables", "definition": "if(b*abs(b1)=b1*abs(b),'from','to')", "description": "", "templateType": "anything", "can_override": false}, "sgn": {"name": "sgn", "group": "Ungrouped variables", "definition": "if(b*abs(b1)=b1*abs(b),-1,1)", "description": "", "templateType": "anything", "can_override": false}, "xn": {"name": "xn", "group": "Ungrouped variables", "definition": "c*abs(b1)+sgn*c1*abs(b)", "description": "", "templateType": "anything", "can_override": false}, "xd": {"name": "xd", "group": "Ungrouped variables", "definition": "a*abs(b1)+sgn*a1*abs(b)", "description": "", "templateType": "anything", "can_override": false}, "xsimp": {"name": "xsimp", "group": "Ungrouped variables", "definition": "xn/xd", "description": "", "templateType": "anything", "can_override": false}, "samex": {"name": "samex", "group": "Ungrouped variables", "definition": "\"

For these equations, it is easiest to get a solution for $y$ first, due to the $x$-terms having {eqoroppa} coefficients.

\\n

If we {aorsa} equation (2) {torfa} equation (1) this eliminates the $x$-terms leaving us with one equation in terms of $y$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({b}+{sgna*(b1)})y} &\\\\,= \\\\simplify[!collectNumbers, !noLeadingminus]{{c}+{sgna*(c1)}}\\\\\\\\ \\\\simplify{{b+sgna*(b1)}y} &\\\\,= \\\\simplify{{c+sgna*(c1)}} \\\\\\\\ y &\\\\,= \\\\simplify[all, fractionNumbers]{{c+sgna*(c1)}/{b+sgna*(b1)}} \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $x$ we can substitute this $y$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\var{a}x + \\\\var{b} \\\\times \\\\simplify[all, fractionNumbers]{{c+sgna*(c1)}/{b+sgna*(b1)}} &\\\\,= \\\\var{c} \\\\\\\\ \\\\var{a}x &\\\\,= \\\\simplify[all, !collectNumbers, !noLeadingminus]{{c} - {c*b+b*sgna*(c1)}/{b+sgna*(b1)}} \\\\\\\\ x &\\\\,= \\\\simplify[fractionNumbers]{{(c*abs(b1)+sgn*c1*abs(b))/(a*abs(b1)+sgn*a1*abs(b))}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "eqoroppb": {"name": "eqoroppb", "group": "Ungrouped variables", "definition": "if(abs(b)*b1=abs(b1)*b,'equal','equal and opposite')", "description": "", "templateType": "anything", "can_override": false}, "eqoroppa": {"name": "eqoroppa", "group": "Ungrouped variables", "definition": "if(abs(a)*a1=abs(a1)*a,'equal','equal and opposite')", "description": "", "templateType": "anything", "can_override": false}, "samey": {"name": "samey", "group": "Ungrouped variables", "definition": "\"

For these equations, it is easiest to get a solution for $x$ first, due to the $y$-terms having {eqoroppb} coefficients.

\\n

If we {aorsb} equation (2) {torfb} equation (1) this eliminates the $y$-terms, leaving us with one equation in terms of $x$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({a}+{sgn*(a1)})x} &\\\\,= \\\\simplify[!collectNumbers, !noLeadingminus]{{c}+{sgn*(c1)}}\\\\\\\\ \\\\simplify{{a+sgn*(a1)}x} &\\\\,= \\\\simplify{{c+sgn*(c1)}} \\\\\\\\ x &\\\\,= \\\\simplify[all, fractionNumbers]{{c+sgn*(c1)}/{a+sgn*(a1)}} \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $y$ we can substitute this $x$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\var{a} \\\\times\\\\simplify[fractionNumbers]{{c+sgn*(c1)}/{a+sgn*(a1)}} + \\\\var{b}y &\\\\,= \\\\var{c} \\\\\\\\ \\\\var{b}y &\\\\,= \\\\simplify[!collectNumbers, !noLeadingminus]{{c} - {c*a+a*sgn*(c1)}/{a+sgn*(a1)}} \\\\\\\\ y &\\\\,= \\\\simplify[fractionNumbers]{{(c-a*xsimp)/b}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "lcmb": {"name": "lcmb", "group": "Ungrouped variables", "definition": "\"

To get a solution for $x$, if we multiply equation (2) by $\\\\simplify{{abs(b/b1)}}$ we will have two equations with {eqoroppb} $y$-coefficients:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!noLeadingminus,unitFactor]{{a}x+{b}y} &\\\\,=\\\\var{c} \\\\qquad\\\\qquad&(3)\\\\\\\\ \\\\simplify[!noLeadingminus,unitFactor]{{a1*abs(b/b1)}x +{b1*abs(b/b1)}y}  &\\\\,=\\\\var{c1*abs(b/b1)} \\\\qquad\\\\qquad&(4)\\\\end{split}\\\\]

\\n

If we {aorsb} equation (4) {torfb} equation (3) this eliminates the $y$-terms, leaving us with one equation in terms of $x$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({a}+{sgn*(a1*abs(b/b1))})x} &\\\\,= \\\\simplify[all, !collectNumbers, !noLeadingminus]{{c}+{sgn*(c1*abs(b/b1))}}\\\\\\\\ \\\\simplify{{a+sgn*(a1*abs(b/b1))}x} &\\\\,= \\\\simplify{{c+sgn*(c1*abs(b/b1))}} \\\\\\\\ x &\\\\,= \\\\simplify[all,fractionNumbers]{{c+sgn*(c1*abs(b/b1))}/{a+sgn*(a1*abs(b/b1))}}. \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $y$ we can substitute this $x$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\var{a}\\\\times\\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{({c+sgn*c1*abs(b/b1)}/{(a)+sgn*a1*abs(b/b1)}) + {b}y} &\\\\,= \\\\var{c} \\\\\\\\ \\\\simplify{{b}y} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c} -({(a*c)+a*sgn*c1*abs(b/b1)}/{(a)+sgn*a1*abs(b/b1)})} \\\\\\\\ \\\\simplify{{b}y} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c -(a*c+a*sgn*c1*abs(b/b1))/(a+sgn*a1*abs(b/b1))}} \\\\\\\\ y &\\\\,=\\\\simplify[fractionNumbers]{{(c-a*xsimp)/b}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "lcmb1": {"name": "lcmb1", "group": "Ungrouped variables", "definition": "\"

To get a solution for $x$, if we multiply equation (1) by $\\\\simplify{{abs(b1/b)}}$ we will have two equations with {eqoroppb} $y$-coefficients:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!noLeadingminus,unitFactor]{{a*abs(b1/b)}x +{b*abs(b1/b)}y}  &\\\\,=\\\\var{c*abs(b1/b)} \\\\qquad\\\\qquad&(3) \\\\\\\\\\\\simplify[!noLeadingminus,unitFactor]{{a1}x+{b1}y} &\\\\,=\\\\var{c1} \\\\qquad\\\\qquad&(4)\\\\\\\\ \\\\end{split} \\\\]

\\n

If we {aorsb} equation (4) {torfb} equation (3) this eliminates the $y$-terms, leaving us with one equation in terms of $x$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({(a*abs(b1/b))}+{sgn*a1})x} &\\\\,= \\\\simplify[!collectNumbers, !noLeadingminus]{{(c*abs(b1/b))}+{sgn*c1}}\\\\\\\\ \\\\simplify{{(a*abs(b1/b))+sgn*a1}x} &\\\\,= \\\\simplify{{(c*abs(b1/b))+sgn*c1}} \\\\\\\\ x &\\\\,= \\\\simplify[all, fractionNumbers]{{(c*abs(b1/b))+sgn*c1}/{(a*abs(b1/b))+sgn*a1}}. \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $y$ we can substitute this $x$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\var{a}\\\\times\\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{({(c*abs(b1/b))+sgn*c1}/{(a*abs(b1/b))+sgn*a1}) + {b}y} &\\\\,= \\\\var{c} \\\\\\\\ \\\\simplify{{b}y} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c} -({(a*c*abs(b1/b))+a*sgn*c1}/{(a*abs(b1/b))+sgn*a1})} \\\\\\\\ \\\\simplify{{b}y} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c -(a*c*abs(b1/b)+a*sgn*c1)/(a*abs(b1/b)+sgn*a1)}} \\\\\\\\ y &\\\\,=\\\\simplify[fractionNumbers]{{(c-a*xsimp)/b}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "full": {"name": "full", "group": "Ungrouped variables", "definition": "\"

To get a solution for $x$, if we multiply equation (1) by $\\\\var{abs(b1)}$ and equation (2) by $\\\\var{abs(b)}$, we will have two equations with {eqoroppb} $y$-coefficients:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!noLeadingminus,unitFactor]{{a*abs(b1)}x+{b*abs(b1)}y} &\\\\,=\\\\var{c*abs(b1)} \\\\qquad\\\\qquad&(3)\\\\\\\\\\\\simplify[!noLeadingminus,unitFactor]{{a1*abs(b)}x +{b1*abs(b)}y}  &\\\\,=\\\\var{c1*abs(b)} \\\\qquad\\\\qquad&(4) \\\\end{split}\\\\]

\\n

Now, {aorsb} equation (4) {torfb} equation (3) to eliminate the $y$ terms:

\\n

\\\\[ \\\\begin{split} (\\\\simplify[!collectNumbers]{{a*abs(b1)} +{sgn*a1*abs(b)}}) x &\\\\,= \\\\simplify[!collectNumbers]{{c*abs(b1)}+{sgn*c1*abs(b)}} \\\\\\\\  \\\\simplify{{a*abs(b1)+sgn*a1*abs(b)}} x &\\\\,= \\\\simplify{{c*abs(b1)+sgn*c1*abs(b)}} .\\\\end{split} \\\\]

\\n

So the solution for $x$ is \\\\[ x=\\\\simplify{{c*abs(b1)+sgn*c1*abs(b)}/{a*abs(b1)+sgn*a1*abs(b)}}.\\\\]

\\n

To obtain a solution for $y$ we can substitute this value of $x$ into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\simplify[noLeadingminus,fractionNumbers,unitFactor]{{a}  {xsimp} + {b}y} &\\\\,=\\\\var{c} \\\\\\\\ \\\\var{b}y &\\\\,= \\\\simplify[!collectNumbers,fractionNumbers]{{c}-{a*xsimp}} \\\\\\\\\\\\var{b}y &\\\\,= \\\\simplify[fractionNumbers]{{c-a*xsimp}} \\\\\\\\y &\\\\,= \\\\simplify[fractionNumbers]{{(c-a*xsimp)/b}} \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "aorsa": {"name": "aorsa", "group": "Ungrouped variables", "definition": "if(a*abs(a1)=abs(a)*a1,'subtract','add')", "description": "", "templateType": "anything", "can_override": false}, "torfa": {"name": "torfa", "group": "Ungrouped variables", "definition": "if(a*abs(a1)=abs(a)*a1,'from','to')", "description": "", "templateType": "anything", "can_override": false}, "sgna": {"name": "sgna", "group": "Ungrouped variables", "definition": "if(a*abs(a1)=abs(a)*a1,-1,1)", "description": "", "templateType": "anything", "can_override": false}, "lcma": {"name": "lcma", "group": "Ungrouped variables", "definition": "\"

To get a solution for $y$, if we multiply equation (2) by $\\\\simplify{{abs(a/a1)}}$ we will have two equations with {eqoroppa} $x$-coefficients:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!noLeadingminus,unitFactor]{{a}x+{b}y} &\\\\,=\\\\var{c} \\\\qquad\\\\qquad&(3)\\\\\\\\ \\\\simplify[!noLeadingminus,unitFactor]{{a1*abs(a/a1)}x +{b1*abs(a/a1)}y}  &\\\\,=\\\\var{c1*abs(a/a1)} \\\\qquad\\\\qquad&(4)\\\\end{split}\\\\]

\\n

If we {aorsa} equation (4) {torfa} equation (3) this eliminates the $x$-terms, leaving us with one equation in terms of $y$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({b}+{sgna*(b1*abs(a/a1))})y} &\\\\,= \\\\simplify[all, !collectNumbers, !noLeadingminus]{{c}+{sgna*(c1*abs(a/a1))}}\\\\\\\\ \\\\simplify{{b+sgna*(b1*abs(a/a1))}y} &\\\\,= \\\\simplify{{c+sgna*(c1*abs(a/a1))}} \\\\\\\\ y &\\\\,= \\\\simplify[all,fractionNumbers]{{c+sgna*(c1*abs(a/a1))}/{b+sgna*(b1*abs(a/a1))}}. \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $x$ we can substitute this $y$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{{a}x + {b}}\\\\times \\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{({c+sgna*c1*abs(a/a1)}/{(b)+sgna*b1*abs(a/a1)})} &\\\\,= \\\\var{c} \\\\\\\\ \\\\simplify{{a}x} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c} -({(b*c)+b*sgna*c1*abs(a/a1)}/{(b)+sgna*b1*abs(a/a1)})} \\\\\\\\ \\\\simplify{{a}x} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c -(b*c+b*sgna*c1*abs(a/a1))/(b+sgna*b1*abs(a/a1))}} \\\\\\\\ x &\\\\,=\\\\simplify[fractionNumbers]{{(c*abs(b1)+sgn*c1*abs(b))/(a*abs(b1)+sgn*a1*abs(b))}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "lcma1": {"name": "lcma1", "group": "Ungrouped variables", "definition": "\"

To get a solution for $y$, if we multiply equation (1) by $\\\\simplify{{abs(a1/a)}}$ we will have two equations with {eqoroppa} $x$-coefficients:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!noLeadingminus,unitFactor]{{a*abs(a1/a)}x +{b*abs(a1/a)}y}  &\\\\,=\\\\var{c*abs(a1/a)} \\\\qquad\\\\qquad&(3) \\\\\\\\\\\\simplify[!noLeadingminus,unitFactor]{{a1}x+{b1}y} &\\\\,=\\\\var{c1} \\\\qquad\\\\qquad&(4) \\\\end{split}\\\\]

\\n

If we {aorsa} equation (4) {torfa} equation (3) this eliminates the $x$-terms, leaving us with one equation in terms of $y$:

\\n

\\\\[ \\\\begin{split} \\\\simplify[!collectNumbers, !noLeadingminus]{({(b*abs(a1/a))}+{sgna*b1})y} &\\\\,= \\\\simplify[!collectNumbers, !noLeadingminus]{{(c*abs(a1/a))}+{sgna*c1}}\\\\\\\\ \\\\simplify{{(b*abs(a1/a))+sgna*b1}y} &\\\\,= \\\\simplify{{(c*abs(a1/a))+sgna*c1}} \\\\\\\\ y &\\\\,= \\\\simplify[all, fractionNumbers]{{(c*abs(a1/a))+sgna*c1}/{(b*abs(a1/a))+sgna*b1}}. \\\\end{split} \\\\]

\\n

\\n

To obtain a solution for $x$ we can substitute this $y$-value into either of our initial equations. Using equation (1), we obtain

\\n

\\\\[ \\\\begin{split} \\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{{a}x + {b}}\\\\times \\\\simplify[all, !noLeadingminus, !expandBrackets, fractionNumbers]{({c*abs(a1/a)+sgna*c1}/{(b*abs(a1/a))+sgna*b1})} &\\\\,= \\\\var{c} \\\\\\\\ \\\\simplify{{a}x} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c} -({(b*c*abs(a1/a))+b*sgna*c1}/{(b*abs(a1/a))+sgna*b1})} \\\\\\\\ \\\\simplify{{a}x} &\\\\,= \\\\simplify[all, !noLeadingminus, fractionNumbers]{{c -(b*c*abs(a1/a)+b*sgna*c1)/(b*abs(a1/a)+sgna*b1)}} \\\\\\\\ x &\\\\,=\\\\simplify[fractionNumbers]{{(c*abs(b1)+sgn*c1*abs(b))/(a*abs(b1)+sgn*a1*abs(b))}}. \\\\end{split} \\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "advice1": {"name": "advice1", "group": "Ungrouped variables", "definition": "if(abs(b)=abs(b1), {samey},if(abs(a)=abs(a1),{samex},if(lcm(abs(b),abs(b1))=abs(b),{lcmb},if(lcm(abs(b),abs(b1))=abs(b1),{lcmb1},if(lcm(abs(a),abs(a1))=abs(a),{lcma},if(lcm(abs(a),abs(a1))=abs(a1),{lcma1},{full}))))))", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "abs(b-b1)>1 and\nabs(a-a1)>1 and\ngcd(a,c)=1 and\ngcd(a1,c1)=1", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "a1", "b1", "c", "c1", "aorsa", "torfa", "aorsb", "torfb", "sgna", "sgn", "xn", "xd", "xsimp", "eqoroppa", "eqoroppb", "advice1", "samey", "samex", "lcmb", "lcmb1", "lcma", "lcma1", "full"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$x=$ [[0]]

\n

$y=$ [[1]]

", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{(c*abs(b1)+sgn*c1*abs(b))/(a*abs(b1)+sgn*a1*abs(b))}", "answerSimplification": "fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}, {"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{(c-a*xsimp)/b}", "answerSimplification": "fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "AS07 Quadratics - solve", "extensions": [], "custom_part_types": [{"source": {"pk": 2, "author": {"name": "Christian Lawson-Perfect", "pk": 7}, "edit_page": "/part_type/2/edit"}, "name": "List of numbers", "short_name": "list-of-numbers", "description": "

The answer is a comma-separated list of numbers.

\n

The list is marked correct if each number occurs the same number of times as in the expected answer, and no extra numbers are present.

\n

You can optionally treat the answer as a set, so the number of occurrences doesn't matter, only whether each number is included or not.

", "help_url": "", "input_widget": "string", "input_options": {"correctAnswer": "join(\n if(settings[\"correctAnswerFractions\"],\n map(let([a,b],rational_approximation(x), string(a/b)),x,settings[\"correctAnswer\"])\n ,\n settings[\"correctAnswer\"]\n ),\n settings[\"separator\"] + \" \"\n)", "hint": {"static": false, "value": "if(settings[\"show_input_hint\"],\n \"Enter a list of numbers separated by {settings['separator']}.\",\n \"\"\n)"}, "allowEmpty": {"static": true, "value": true}}, "can_be_gap": true, "can_be_step": true, "marking_script": "bits:\nlet(b,filter(x<>\"\",x,split(studentAnswer,settings[\"separator\"])),\n if(isSet,list(set(b)),b)\n)\n\nexpected_numbers:\nlet(l,settings[\"correctAnswer\"] as \"list\",\n if(isSet,list(set(l)),l)\n)\n\nvalid_numbers:\nif(all(map(not isnan(x),x,interpreted_answer)),\n true,\n let(index,filter(isnan(interpreted_answer[x]),x,0..len(interpreted_answer)-1)[0], wrong, bits[index],\n warn(wrong+\" is not a valid number\");\n fail(wrong+\" is not a valid number.\")\n )\n )\n\nis_sorted:\nassert(sort(interpreted_answer)=interpreted_answer,\n multiply_credit(0.5,\"Not in order\")\n )\n\nincluded:\nmap(\n let(\n num_student,len(filter(x=y,y,interpreted_answer)),\n num_expected,len(filter(x=y,y,expected_numbers)),\n switch(\n num_student=num_expected,\n true,\n num_studentThe separate items in the student's answer

", "definition": "let(b,filter(x<>\"\",x,split(studentAnswer,settings[\"separator\"])),\n if(isSet,list(set(b)),b)\n)"}, {"name": "expected_numbers", "description": "", "definition": "let(l,settings[\"correctAnswer\"] as \"list\",\n if(isSet,list(set(l)),l)\n)"}, {"name": "valid_numbers", "description": "

Is every number in the student's list valid?

", "definition": "if(all(map(not isnan(x),x,interpreted_answer)),\n true,\n let(index,filter(isnan(interpreted_answer[x]),x,0..len(interpreted_answer)-1)[0], wrong, bits[index],\n warn(wrong+\" is not a valid number\");\n fail(wrong+\" is not a valid number.\")\n )\n )"}, {"name": "is_sorted", "description": "

Are the student's answers in ascending order?

", "definition": "assert(sort(interpreted_answer)=interpreted_answer,\n multiply_credit(0.5,\"Not in order\")\n )"}, {"name": "included", "description": "

Is each number in the expected answer present in the student's list the correct number of times?

", "definition": "map(\n let(\n num_student,len(filter(x=y,y,interpreted_answer)),\n num_expected,len(filter(x=y,y,expected_numbers)),\n switch(\n num_student=num_expected,\n true,\n num_studentHas every number been included the right number of times?

", "definition": "all(included)"}, {"name": "no_extras", "description": "

True if the student's list doesn't contain any numbers that aren't in the expected answer.

", "definition": "if(all(map(x in expected_numbers, x, interpreted_answer)),\n true\n ,\n incorrect(\"Your answer contains \"+extra_numbers[0]+\" but should not.\");\n false\n )"}, {"name": "interpreted_answer", "description": "A value representing the student's answer to this part.", "definition": "if(lower(studentAnswer) in [\"empty\",\"\u2205\"],[],\n map(\n if(settings[\"allowFractions\"],parsenumber_or_fraction(x,notationStyles), parsenumber(x,notationStyles))\n ,x\n ,bits\n )\n)"}, {"name": "mark", "description": "This is the main marking note. It should award credit and provide feedback based on the student's answer.", "definition": "if(studentanswer=\"\",fail(\"You have not entered an answer\"),false);\napply(valid_numbers);\napply(included);\napply(no_extras);\ncorrectif(all_included and no_extras)"}, {"name": "notationStyles", "description": "", "definition": "[\"en\"]"}, {"name": "isSet", "description": "

Should the answer be considered as a set, so the number of times an element occurs doesn't matter?

", "definition": "settings[\"isSet\"]"}, {"name": "extra_numbers", "description": "

Numbers included in the student's answer that are not in the expected list.

", "definition": "filter(not (x in expected_numbers),x,interpreted_answer)"}], "settings": [{"name": "correctAnswer", "label": "Correct answer", "help_url": "", "hint": "The list of numbers that the student should enter. The order does not matter.", "input_type": "code", "default_value": "", "evaluate": true}, {"name": "allowFractions", "label": "Allow the student to enter fractions?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": false}, {"name": "correctAnswerFractions", "label": "Display the correct answers as fractions?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": false}, {"name": "isSet", "label": "Is the answer a set?", "help_url": "", "hint": "If ticked, the number of times an element occurs doesn't matter, only whether it's included at all.", "input_type": "checkbox", "default_value": false}, {"name": "show_input_hint", "label": "Show the input hint?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": true}, {"name": "separator", "label": "Separator", "help_url": "", "hint": "The substring that should separate items in the student's list", "input_type": "string", "default_value": ",", "subvars": false}], "public_availability": "always", "published": true, "extensions": []}], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Solving a quadratic equation via factorisation (or otherwise) with the $x^2$-term having a coefficient of 1.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Solve the following quadratic equation by factorisation or otherwise:

\n

\\[ \\simplify[unitFactor]{x^2+{b}x+{c}=0} \\]

", "advice": "

To solve a quadratic equation of the form \\[ x^2+bx+c=0\\] by factorisation, we want to factorise the equation into the form \\[(x+p)(x+q)=0,\\] where $p+q=b$ and $p \\times q = c$. 

\n

Hence, for the equation \\[\\simplify{x^2+{b}x+{c}=0}, \\]

\n

this can be factorised to \\[\\simplify{(x+{p})(x+{q})=0}.\\] This equation is satisfied when either \\[\\simplify{x+{p}=0} \\quad \\text{or} \\quad \\simplify{x+{q}=0}, \\] which implies the solutions to this quadratic equation are \\[ \\simplify{x={-p}} \\quad \\text{and} \\quad \\simplify{x={-q}} .\\]

\n

Use this link to find resources to help you revise how to solve quadratic equations by factorising the expression.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"b": {"name": "b", "group": "Ungrouped variables", "definition": "{p+q}", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "{p*q}", "description": "", "templateType": "anything", "can_override": false}, "p": {"name": "p", "group": "Ungrouped variables", "definition": "random(-10..10 except 0)", "description": "", "templateType": "anything", "can_override": false}, "q": {"name": "q", "group": "Ungrouped variables", "definition": "random(-10..10 except [0,p])", "description": "", "templateType": "anything", "can_override": false}, "sol": {"name": "sol", "group": "Ungrouped variables", "definition": "[-p,-q]", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "abs(p+q)>0", "maxRuns": 100}, "ungrouped_variables": ["b", "c", "p", "q", "sol"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$x= $[[0]]

", "gaps": [{"type": "list-of-numbers", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "settings": {"correctAnswer": "{sol}", "allowFractions": false, "correctAnswerFractions": false, "isSet": false, "show_input_hint": true, "separator": ","}}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CD01 Differentiate Polynomials 1", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}], "tags": [], "metadata": {"description": "

Find the derivative of a function of the form $y=ax^b$ using a table of derivatives.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate the derivative of $y=\\simplify{{a}x^{b}}$.

\n

", "advice": "

From the Table of Derivatives we see that a function of the form \\[ f(x)=kx^n \\] has a derivative \\[ \\frac{df}{dx} = knx^{n-1}. \\]

\n

So, for the function \\[ y=\\simplify{{a}x^{b}}, \\] the derivative  is \\begin{split}\\frac{dy}{dx} &= (\\var{a}\\times\\var{b})x^{\\var{b}-1},\\\\ \\\\&= \\simplify{{a*b}x^{{b}-1}}.\\end{split}

\n

\n

Use this link to find some resources which will help you revise this topic.

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(-20..20 except 0)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(1 .. 5#1)", "description": "", "templateType": "randrange", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\frac{dy}{dx}=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{a*b}x^{{b}-1}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CD04 Differentiating with Exponentials", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Calculating the derivative of an exponential function of the form $ae^{bx}$, using a table of derivatives.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate the derivative of $y=\\simplify[all]{{a}*e^({b}x)}.$

", "advice": "

From the Table of Derivatives we see that a function of the form \\[ f(x)=a e^{kx} \\] has a derivative \\[ak e^{kx}.\\]

\n

Therefore, the function  \\[y=\\simplify[unitFactor]{{a}*e^({b}x)}\\] has a derivative\\[ \\begin{split} \\frac{dy}{dx} &=(\\var{a}\\times \\var{b})e^{\\simplify[unitFactor]{{b}x}}\\\\ &= \\simplify[unitFactor]{{a*b}e^({b}x)}.\\end{split}\\]

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(-20..20 except 0)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(1 .. 20#1)", "description": "", "templateType": "randrange", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(-5..5)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["a", "b", "c"], "variable_groups": [{"name": "Unnamed group", "variables": []}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\frac{dy}{dx}=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{a*b}e^({b}x)", "answerSimplification": "fractionNumbers, basic, unitFactor", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CD06 Differentiating Trig 2", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}], "tags": [], "metadata": {"description": "

Find the derivative of a function of the form $y=a \\sin(bx+c)$ using a table of derivatives.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Using the Table of Derivatives, calculate the derivative of $y=\\simplify[unitFactor]{{a}sin({b}x+{c})}.$

\n

\n

", "advice": "

From the Table of Derivatives we see that a function of the form \\[ f(x)=a \\sin(kx+c) \\] has a derivative \\[ak \\cos (kx+c).\\]

\n

Therefore, the function  \\[y=\\simplify[unitFactor]{{a}*sin({b}x+{c})}\\] has a derivative\\[ \\begin{split} \\frac{dy}{dx} &=(\\var{a}\\times \\var{b})\\cos(\\simplify[unitFactor]{{b}x+{c}})\\\\ &= \\simplify[unitFactor]{{a*b}cos({b}x+{c})}.\\end{split}\\]

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(-10..10 except 0)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(-10..10 except 0)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "Ungrouped variables", "definition": "random(-15..15)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["a", "b", "c"], "variable_groups": [{"name": "Unnamed group", "variables": []}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\frac{dy}{dx}=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{a*b}cos({b}x+{c})", "answerSimplification": "fractionNumbers, basic, unitFactor", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CD09 Chain Rule", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}], "tags": [], "metadata": {"description": "

Calculating the derivative of a function of the form $\\sin(ax^m+bx^n)$ using the chain rule.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate the derivative of $y=\\simplify[all]{sin({a}*x^{n}+{b}*x^{m})}$.

", "advice": "

If we have a function of the form $y=f(g(x))$, sometimes described as a function of a function, to calculate its derivative we need to use the chain rule:

\n

\\[ \\frac{dy}{dx} = \\frac{du}{dx} \\times \\frac{dy}{du}.\\]

\n

\n

This can be split up into steps:

\n\n

\n

Following this process, we must first identify $g(x)$. Since the function is of the form $y=f(g(x))$, we are looking for the 'inner' function.

\n

So, for $y=\\simplify[all,fractionNumbers]{sin({a}*x^{n}+{b}*x^{m})}$, \\[g(x)=\\simplify[all, fractionNumbers, unitFactor]{{a}*x^{n}+{b}*x^{m}}.\\]

\n

If we now set $u=g(x)$, we can rewrite $y$ in terms of $u$ such that $y=f(u)$:

\n

\\[y=\\simplify[all, fractionNumbers,unitFactor]{sin(u)}.\\]

\n

Next, we calculate the two derivatives $\\frac{du}{dx}$ and $\\frac{dy}{du}$:

\n

\\[\\frac{du}{dx}=\\simplify[all,fractionNumbers]{{a*n}x^{n-1}+{b*m}x^{m-1}}, \\quad \\frac{dy}{du}=\\simplify[all, fractionNumbers, unitFactor]{cos(u)}.\\]

\n

Plugging these into the chain rule:

\n

\\[ \\begin{split} \\frac{dy}{dx} &= \\frac{du}{dx} \\times \\frac{dy}{du}, \\\\&=(\\simplify[all,fractionNumbers]{{a*n}x^{n-1}+{b*m}x^{m-1}}) \\times\\simplify[all, fractionNumbers, unitFactor]{cos(u)}. \\end{split} \\]

\n

Finally, we need to express $\\frac{dy}{dx}$ only in terms of $x$, so we must replace the $u$ term using the initial substitution $u=\\simplify[all, fractionNumbers, unitFactor]{{a}*x^{n}+{b}*x^{m}}$:

\n

\\[ \\frac{dy}{dx} =(\\simplify[all,fractionNumbers]{{a*n}x^{n-1}+{b*m}x^{m-1}})\\simplify[all, fractionNumbers, unitFactor]{cos({a}*x^{n}+{b}*x^{m})}.\\]

\n

\n

Use this link to find some resources which will help you revise this topic.

\n

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(1..10)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(-10..10 except 0)", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(1..5)", "description": "", "templateType": "anything", "can_override": false}, "m": {"name": "m", "group": "Ungrouped variables", "definition": "random(1..5)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "n>m", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "n", "m"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\frac{dy}{dx}=$[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "({a*n}*x^{n-1}+{b*m}*x^{m-1})*cos({a}x^{n}+{b}x^{m})", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CD10 Product Rule", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}], "tags": [], "metadata": {"description": "

Calculating the derivative a function of the form $ax^n \\sin(bx)$ using the product rule.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Find the derivative of \\[ \\simplify{y={a}x^{n} sin({b}x)}. \\]

", "advice": "

If we have a function of the form $y=u(x)v(x)$, to calculate its derivative we need to use the product rule:

\n

\\[ \\dfrac{dy}{dx} = u(x) \\times \\dfrac{dv}{dx} + v(x) \\times\\dfrac{du}{dx}.\\]

\n

This can be split up into steps:

\n
    \n
  1. Identify the functions $u(x)$ and $v(x)$;
  2. \n
  3. Calculate their derivatives $\\tfrac{du}{dx}$ and $\\tfrac{dv}{dx}$;
  4. \n
  5. Substitute these into the formula for the product rule to obtain an expression for $\\tfrac{dy}{dx}$;
  6. \n
  7. Simplify $\\tfrac{dy}{dx}$ where possible.
  8. \n
\n

Following this process, we must first identify $u(x)$ and $v(x)$.

\n

As \\[ \\simplify{y={a}x^{n} sin({b}x)}, \\]

\n

let \\[ u(x) = \\simplify{{a}x^{n}} \\quad \\text{and} \\quad v(x)=\\simplify{sin({b}x)}.\\]

\n

Next, we need to find the derivatives, $\\tfrac{du}{dx}$ and $\\tfrac{dv}{dx}$:

\n

\\[ \\dfrac{du}{dx} = \\simplify{{a*n}x^{n-1}}\\quad \\text{and} \\quad\\dfrac{dv}{dx}=\\simplify{{b}cos({b}x)}.\\]

\n

Substituting these results into the product rule formula we can obtain an expression for $\\tfrac{dy}{dx}$:

\n

\\[ \\begin{split} \\dfrac{dy}{dx} &\\,= \\dfrac{du}{dx}\\times v(x) + u(x) \\times\\dfrac{dv}{dx} \\\\ &\\,=\\simplify{{a*n}x^{n-1}} \\times\\simplify{sin({b}x)} +\\simplify{{a}x^{n}} \\times \\simplify{{b}cos({b}x)}.  \\end{split}\\]

\n

Simplifying,

\n

\\[\\dfrac{dy}{dx} = \\simplify{{n*a}x^{n-1}sin({b}x) + {a*b}x^{n}cos({b}x)}. \\]

\n

\n

Use this link to find some resources which will help you revise this topic

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(1..10)", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(1..10)", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2..5)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "n"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\dfrac{dy}{dx}=$[[0]] 

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{n*a}x^{n-1}sin({b}x) + {a*b}x^{n}cos({b}x)", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CI02 Definite integration", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}], "tags": [], "metadata": {"description": "

Calculating the definite integral $\\int_{n_1}^{n_2}a_1x^{b_1}+a_2x^{b_2}+a_3x^{b_3} dx$.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Evaluate \\[ \\int_{\\var{n_1}}^{\\var{n_2}}\\simplify[unitFactor, unitPower, fractionNumbers]{{a_1}*x^{b_1}+{a_2}*x^{b_2}+{a_3}*x^{b_3}} \\,dx.\\]

\n

", "advice": "

Integrating a function of the form  \\[ f(x)=x^n \\] has the integral \\[ \\int_a^b x^n dx  =  \\left[\\frac{x^{n+1}}{n+1}\\right]_a^b,\\]

\n

and \\[\\int_a^b kf(x) dx = k \\int_a^b f(x) dx.\\]

\n

Additionally, the integral of the sum or difference of two or more functions is equal to the sum or difference of the integrals of each function: \\[ \\int(f(x)\\pm g(x))\\, dx = \\int f(x)\\, dx  \\pm \\int g(x) \\, dx.\\]

\n

\n

Therefore,

\n

\\[ \\begin{split}\\simplify[unitFactor,unitPower]{defint({a_1}*x^{b_1}+{a_2}*x^{b_2}+{a_3}*x^{b_3},x,{n_1},{n_2})} &\\,= \\simplify{{a_1}defint(x^{b_1},x,{n_1},{n_2})+{a_2}defint(x^{b_2},x,{n_1},{n_2})+{a_3}defint(x^{b_3},x,{n_1},{n_2})} \\\\ &\\,= \\left[\\simplify[all,fractionNumbers]{{a_1}x^{b_1+1}/{b_1+1}+{a_2}x^{b_2+1}/{b_2+1}+{a_3}x^{b_3+1}/{b_3+1}}\\right]_\\var{n_1}^\\var{n_2} \\\\ &\\,= \\left[\\simplify[all,fractionNumbers,!collectNumbers]{{a_1*n_2^(b_1+1)}/{b_1+1}+{a_2*n_2^(b_2+1)}/{b_2+1}+{a_3*n_2^(b_3+1)}/{b_3+1}}\\right] -\\left[\\simplify[all,fractionNumbers,!collectNumbers]{{a_1*n_1^(b_1+1)}/{b_1+1}+{a_2*n_1^(b_2+1)}/{b_2+1}+{a_3*n_1^(b_3+1)}/{b_3+1}}\\right] \\\\ &\\,= \\simplify[!collectNumbers]{{eval2a}-{eval1a}} \\\\ &\\,=\\var{sol1} \\end{split} \\]

\n

Use this link to find some resources on areas under curves which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a_1": {"name": "a_1", "group": "Ungrouped variables", "definition": "random(1..5)", "description": "", "templateType": "anything", "can_override": false}, "b_1": {"name": "b_1", "group": "Ungrouped variables", "definition": "3", "description": "", "templateType": "anything", "can_override": false}, "a_2": {"name": "a_2", "group": "Ungrouped variables", "definition": "random(-5..5 except 0)", "description": "", "templateType": "anything", "can_override": false}, "b_2": {"name": "b_2", "group": "Ungrouped variables", "definition": "2", "description": "", "templateType": "anything", "can_override": false}, "b_3": {"name": "b_3", "group": "Ungrouped variables", "definition": "1", "description": "", "templateType": "anything", "can_override": false}, "a_3": {"name": "a_3", "group": "Ungrouped variables", "definition": "random(-6..6 except 0)", "description": "", "templateType": "anything", "can_override": false}, "n_1": {"name": "n_1", "group": "Ungrouped variables", "definition": "random(0..2)", "description": "", "templateType": "anything", "can_override": false}, "n_2": {"name": "n_2", "group": "Ungrouped variables", "definition": "random(2..5)", "description": "", "templateType": "anything", "can_override": false}, "eval2": {"name": "eval2", "group": "Ungrouped variables", "definition": "a_1*n_2^(b_1+1)/(b_1+1)+a_2*n_2^(b_2+1)/(b_2+1)+a_3*n_2^(b_3+1)/(b_3+1)", "description": "", "templateType": "anything", "can_override": false}, "eval1": {"name": "eval1", "group": "Ungrouped variables", "definition": "a_1*n_1^(b_1+1)/(b_1+1)+a_2*n_1^(b_2+1)/(b_2+1)+a_3*n_1^(b_3+1)/(b_3+1)", "description": "", "templateType": "anything", "can_override": false}, "eval2a": {"name": "eval2a", "group": "Ungrouped variables", "definition": "precround(eval2,3)", "description": "", "templateType": "anything", "can_override": false}, "eval1a": {"name": "eval1a", "group": "Ungrouped variables", "definition": "precround(eval1,3)", "description": "", "templateType": "anything", "can_override": false}, "sol": {"name": "sol", "group": "Ungrouped variables", "definition": "eval2-eval1", "description": "", "templateType": "anything", "can_override": false}, "sol1": {"name": "sol1", "group": "Ungrouped variables", "definition": "precround(sol,2)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "b_1>b_2 and b_2>b_3 and n_2>n_1", "maxRuns": "100"}, "ungrouped_variables": ["a_1", "a_2", "a_3", "b_1", "b_2", "b_3", "n_1", "n_2", "eval2", "eval1", "eval2a", "eval1a", "sol", "sol1"], "variable_groups": [{"name": "Unnamed group", "variables": []}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]] (Give answers to 2 decimal places where necessary)

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "{sol1}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "CI05 Integration - Substitution", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Calculating the integral of a function of the form $\\frac{nx^{n-1}}{x^n+a}$ using integration by substitution.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate \\[ \\simplify[all]{int(({n}x^{n-1})/(x^{n}+{a}),x)}\\]

\n

by using the substitution \\[ \\simplify[all]{u=x^{n}+{a}}.\\]

", "advice": "

Since this integral is of the form \\[ \\int g'(x)f(g(x))\\,dx,\\] we can use the method of substitution to calculate the solution. 

\n

Firstly, we must make a change of variables from $x$ to $u$, where $u$ is equal to the 'inner' function $g(x)$.

\n

So, for \\[\\simplify[fractionNumbers]{int(({n}x^{n-1})/((x^{n}+{a})),x)}\\]

\n

let $\\color{red}{u=\\simplify[fractionNumbers]{x^{n}+{a}}}.$

\n

Now, we need to calculate the differential, $du$, where \\[ du = \\left(\\frac{du}{dx}\\right)dx. \\]

\n

Differentiating $u$ with respect to $x$:

\n

\\[ \\frac{du}{dx}= \\simplify[fractionNumbers]{{n}x^{n-1}}.\\]

\n

Therefore, \\[ \\color{blue}{du = \\simplify[fractionNumbers]{{n}x^{n-1}}\\, dx}.\\]

\n

We can now rewrite the original integral in terms of $u$:

\n

\\[ \\int \\frac{\\color{blue}{\\simplify{{n}x^{n-1}}}}{\\color{red}{\\simplify{x^{n}+{a}}}}\\color{blue}{\\text{d}x} = \\int \\frac{1}{\\color{red}{u}}\\color{blue}{\\text{d}u}.\\]

\n

(Note: It is important to see that both the function we are integrating, and the variable we are integrating with respect to, has changed.)

\n

\\[ \\simplify[fractionNumbers]{int(1/u,u) = ln(abs(u)) + c}.\\]

\n

Finally, we must rewrite our solution back in terms of the original variable $x$:

\n

\\[ \\simplify[fractionNumbers]{ln(abs(u)) + c = ln(abs(x^{n}+{a})) + c}.\\]

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(-5..5 except 0)", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "Ungrouped variables", "definition": "random(2..6)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["a", "n"], "variable_groups": [{"name": "Unnamed group", "variables": []}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]]

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Correct answer", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "alternatives": [{"type": "jme", "useCustomName": true, "customName": "Alternative using brackets", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "

Technically we should use the absolute value symbols for the logs. This can be done in NUMBAS by using \"abs(*function*)\".

", "useAlternativeFeedback": false, "answer": "ln(x^{n}+{a})+c", "answerSimplification": "all,!collectLikeFractions,fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "c", "value": ""}, {"name": "x", "value": ""}]}, {"type": "jme", "useCustomName": true, "customName": "Alternative using \"+k\"", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "", "useAlternativeFeedback": false, "answer": "ln(abs(x^{n}+{a})) + k", "answerSimplification": "all,!collectLikeFractions,fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "k", "value": ""}, {"name": "x", "value": ""}]}, {"type": "jme", "useCustomName": true, "customName": "Alternative using brackets and \"+k\"", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "

Technically we should use the absolute value symbols for the logs. This can be done in NUMBAS by using \"abs(*function*)\".

", "useAlternativeFeedback": false, "answer": "ln(x^{n}+{a})+k", "answerSimplification": "all,!collectLikeFractions,fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "k", "value": ""}, {"name": "x", "value": ""}]}, {"type": "jme", "useCustomName": true, "customName": "Forgotten constant", "marks": "0.5", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "

It looks like you forgot to include the integration constant. You should always remember the \"+C\" when doing an indefinite integral.

", "useAlternativeFeedback": false, "answer": "ln(abs(x^{n}+{a}))", "answerSimplification": "all,!collectLikeFractions,fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "x", "value": ""}]}], "answer": "ln(abs(x^{n}+{a}))+c", "answerSimplification": "all,!collectLikeFractions,fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": "0.01", "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "c", "value": ""}, {"name": "x", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "GA01 Angles in triangles", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Find the missing angle in a triangle using the fact that the angles add to 180 degrees.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

What is the size of the missing angle $C$? All angles are measured in degrees.

\n

{geogebra_applet('https://www.geogebra.org/m/akwnfkfr',[a: a, b: b])}

", "advice": "

Recall that the angles in a triangle add up to $180^{\\circ}$.

\n

We can add together two angles we know and subtract the result from $180$ to find the size of our missing angle,

\n

\\[ \\begin{split} 180 - (\\var{a} + \\var{b}) &\\, = 180 - (\\var{a+b}) \\\\ &\\, = \\var{180-(a+b)}^{\\circ}. \\end{split} \\]

\n

 Use this link to find resources to help you revise properties of triangles.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(20 .. 120#1)", "description": "", "templateType": "randrange", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "random(10 .. 50#1)", "description": "", "templateType": "randrange", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

The size of the missing angle is [[0]]$^{\\circ}$.

", "gaps": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "180-{{a}+{b}}", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "GA03 Pythagoras - rectangle", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Find the diagonal or one side of a rectangle using Pythagoras' theorem.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

What is the height of the rectangle below (all measurements given in $cm$)? Please give your answer to one decimal place.

\n

{geogebra_applet('https://www.geogebra.org/m/jk3n6sxh',[base: base, hyp: hyp])}

", "advice": "

You can see that the rectangle contains a right-angled triangle. We also have the lengths of the base and the hypoteneuse of the triangle. This means we can use Pythagoras' theorem to calculate the last remaining side of the triangle which is also the height of the rectangle. 

\n

\\[ \\begin{split} Height &\\, = \\sqrt{hypoteneuse^2 - base^2} \\\\ &\\, = \\sqrt{\\var{hyp}^2-\\var{base}^2} \\\\ &\\, = \\sqrt{\\var{{hyp}^2}-\\var{{base}^2}} \\\\ &\\, = \\sqrt{\\var{{{hyp}^2}-{{base}^2}}}\\\\ &\\, = \\var{ans}\\\\ &\\, = \\var{ansr} \\text{ to 1 d.p.} \\end{split} \\]

\n

Use this link to find resources to help you revise Pythagoras' theorem.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"hyp": {"name": "hyp", "group": "Ungrouped variables", "definition": "random(10 .. 15#1)", "description": "", "templateType": "randrange", "can_override": false}, "base": {"name": "base", "group": "Ungrouped variables", "definition": "random(3 .. 8#1)", "description": "", "templateType": "randrange", "can_override": false}, "ans": {"name": "ans", "group": "Ungrouped variables", "definition": "sqrt(hyp^2-base^2)", "description": "", "templateType": "anything", "can_override": false}, "ansr": {"name": "ansr", "group": "Ungrouped variables", "definition": "precround(ans,1)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["hyp", "base", "ans", "ansr"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": true, "customName": "Answer", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]]$cm$ (give your answer to 1 d.p.)

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "ans", "maxValue": "ans", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "1", "precisionPartialCredit": 0, "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "GA05 Trigonometry - missing angle", "extensions": ["eukleides"], "custom_part_types": [], "resources": ["question-resources/Picture1_caMIdF1.png", "question-resources/Picture2_6KE4ZpW.png"], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "David Wishart", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1461/"}, {"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Lauren Desoysa", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21504/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Draws a triangle based on 3 side lengths.  Randomises asking angle or side.

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

{max_height(25,diagram)}

", "advice": "

Avoid using rounded values in calculations and just round for the final answer.

{advice}

\n

\n

Use this link to find resources to help you revise how to answer trigonometry questions that ask you to find the missing angle.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"ab": {"name": "ab", "group": "Unnamed group", "definition": "precround(sqrt(ac^2+bc^2),1)", "description": "", "templateType": "anything", "can_override": false}, "ac": {"name": "ac", "group": "Unnamed group", "definition": "precround(gen_ac,1)", "description": "", "templateType": "anything", "can_override": false}, "bc": {"name": "bc", "group": "Unnamed group", "definition": "precround(gen_bc,1)", "description": "", "templateType": "anything", "can_override": false}, "d_t_s_1": {"name": "d_t_s_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label(angle)\n , b..c label(bc)\n , a..c label('x')\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_c_s_1": {"name": "d_c_s_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label(angle)\n , a..c label('x')\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "diagram": {"name": "diagram", "group": "Unnamed group", "definition": "if(SCT='s',\n if(AngORside='ang',\n random(d_s_a_1,d_s_a_2),\n random(d_s_s_1,d_s_s_2)),\n if(SCT='t',\n if(AngORside='ang',\n random(d_t_a_1,d_t_a_2),\n random(d_t_s_1,d_t_s_2)),\n if(SCT='c',\n if(AngORside='ang',\n random(d_c_a_1,d_c_a_2),\n random(d_c_s_1,d_c_s_2)),'X')))\n ", "description": "", "templateType": "anything", "can_override": false}, "d_s_s_1": {"name": "d_s_s_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label(angle)\n , b..c label('x')\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_c_a_1": {"name": "d_c_a_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label('x')\n , a..c label(ac)\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_s_a_1": {"name": "d_s_a_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label('x')\n , b..c label(bc)\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_t_a_1": {"name": "d_t_a_1", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label('x')\n , b..c label(bc)\n , a..c label(ac)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_t_s_2": {"name": "d_t_s_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,-ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(b,a,c) label(angle)\n , b..c label(bc)\n , a..c label('x')\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_c_a_2": {"name": "d_c_a_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,-ac),\n b, point(bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(b,a,c) label('x')\n , a..c label(ac)\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "SCT": {"name": "SCT", "group": "Unnamed group", "definition": "random('s','c','t')", "description": "", "templateType": "anything", "can_override": false}, "AngORside": {"name": "AngORside", "group": "Unnamed group", "definition": "'ang'", "description": "", "templateType": "anything", "can_override": false}, "d_c_s_2": {"name": "d_c_s_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(-bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(b,a,c) label(angle)\n , a..c label('x')\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_s_a_2": {"name": "d_s_a_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,-ac),\n b, point(-bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label('x')\n , b..c label(bc)\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_s_s_2": {"name": "d_s_s_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,-ac),\n b, point(-bc,0),\n c, point(0,0),\n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(c,a,b) label(angle)\n , b..c label('x')\n , a..b label(ab)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "d_t_a_2": {"name": "d_t_a_2", "group": "triangle types", "definition": "eukleides(\"A right-angled triangle\",\n let(\n a, point(0,ac),\n b, point(-bc,0),\n c, point(0,0), \n\n [\n \n a..b..c\n , angle(a,c,b) right\n , angle(b,a,c) label('x')\n , b..c label(bc)\n , a..c label(ac)\n \n ]\n ),\n[\"angle\":{angle}]\n)", "description": "", "templateType": "anything", "can_override": false}, "answer": {"name": "answer", "group": "Unnamed group", "definition": "precround(angle*180/pi,2)", "description": "", "templateType": "anything", "can_override": false}, "advice": {"name": "advice", "group": "advice", "definition": "if(SCT='s',\n if(AngORside='ang',\n {sin_a},\n {sin_bc}),\n if(SCT='c',\n if(AngORside='ang',\n {cos_a},\n {cos_ac}),\n if(AngORside='ang',\n {tan_a},{tan_ac})))", "description": "", "templateType": "anything", "can_override": false}, "sin_a": {"name": "sin_a", "group": "advice", "definition": "\"

In this situation $x$ is an angle.  We label the known sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we are interested in:

\\n

$\\\\text{Opposite} = \\\\var{bc}$
$\\\\text{Hypotenuse} = \\\\var{ab}$

We have \\'O\\' and \\'H\\' in SOHCAHTOA, so we know we need to use the $\\\\sin$ formula:

\\n

\\\\[ \\\\sin(\\\\text{Angle}) = \\\\frac{\\\\text{Opposite}}{\\\\text{Hypotenuse}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\sin(x) = \\\\frac{\\\\var{bc}}{\\\\var{ab}}\\\\]

We need to use the \\'inverse sin\\' button on the calculator (also called $\\\\arcsin$ or notated $\\\\sin^{-1}$) in order to isolate $x$:

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\arcsin(\\\\var{bc}/\\\\var{ab})\\\\]

\\n

\\\\[ x = \\\\var{precround(180*(arcsin(bc/(ab)))/pi,4)}\\\\]

\\n

Round as required:

\\n

\\\\[x = \\\\var{precround(180*(arcsin(bc/(ab)))/pi,2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "cos_a": {"name": "cos_a", "group": "advice", "definition": "\"

In this situation $x$ is an angle.  We label the known sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we are interested in:

\\n

$\\\\text{Adjacent} = \\\\var{ac}$
$\\\\text{Hypotenuse} = \\\\var{ab}$

We have \\'A\\' and \\'H\\' in SOHCAHTOA, so we know we need to use the $cos$ formula:

\\n

\\\\[ \\\\cos(\\\\text{Angle}) = \\\\frac{\\\\text{Adjacent}}{\\\\text{Hypotenuse}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\cos(x) = \\\\frac{\\\\var{ac}}{\\\\var{ab}}\\\\]

We need to use the \\'inverse cos\\' button on the calculator (also called $\\\\arccos$ or notated $\\\\cos^{-1}$) in order to isolate $x$:

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\arccos(\\\\var{ac}/\\\\var{ab})\\\\]

\\n

\\\\[ x = \\\\var{precround(180*(arccos(ac/(ab)))/pi,4)}\\\\]

\\n

Round as required:

\\n

\\\\[x = \\\\var{precround(180*(arccos(ac/(ab)))/pi,2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "tan_a": {"name": "tan_a", "group": "advice", "definition": "\"

In this situation $x$ is an angle.  We label the known sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we are interested in:

\\n

$\\\\text{Opposite} = \\\\var{bc}$
$\\\\text{Adjacent} = \\\\var{ac}$

We have \\'O\\' and \\'A\\' in SOHCAHTOA, so we know we need to use the $\\\\tan$ formula:

\\n

\\\\[ \\\\tan(\\\\text{Angle}) = \\\\frac{\\\\text{Opposite}}{\\\\text{Adjacent}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\tan(x) = \\\\frac{\\\\var{bc}}{\\\\var{ac}}\\\\]

We need to use the \\'inverse sin\\' button on the calculator (also called $\\\\arctan$ or notated $\\\\tan^{-1}$) in order to isolate $x$:

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\arctan(\\\\var{bc}/\\\\var{ac})\\\\]

\\n

\\\\[ x = \\\\var{precround(180*(arctan(bc/(ac)))/pi,4)}\\\\]

\\n

Round as required:

\\n

\\\\[x = \\\\var{precround(180*(arctan(bc/(ac)))/pi,2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "sin_bc": {"name": "sin_bc", "group": "advice", "definition": "\"

In this situation $x$ is a side.  We label the relevant sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we know:

\\n

$\\\\text{Opposite} = x$
$\\\\text{Hypotenuse} = \\\\var{ab}$

We have \\'O\\' and \\'H\\' in SOHCAHTOA, so we know we need to use the $\\\\sin$ formula:

\\n

\\\\[ \\\\sin(\\\\text{Angle}) = \\\\frac{\\\\text{Opposite}}{\\\\text{Hypotenuse}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\sin(\\\\var{angle}) = \\\\frac{x}{\\\\var{ab}}\\\\]

and rearrange to give:

\\n

\\\\[ x = \\\\var{ab} \\\\times \\\\sin(\\\\var{angle}) \\\\]

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\var{precround(ab*sin(pi*angle/180),4)}\\\\]

\\n

Round as required:

\\n

\\\\[ x = \\\\var{precround(ab*sin(pi*angle/180),2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "cos_ac": {"name": "cos_ac", "group": "advice", "definition": "\"

In this situation $x$ is a side.  We label the relevant sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we know:

\\n

$\\\\text{Hypotenuse} = \\\\var{ab}$
$\\\\text{Adjacent} = x$

We have \\'A\\' and \\'H\\' in SOHCAHTOA, so we know we need to use the $\\\\cos$ formula:

\\n

\\n

\\\\[ \\\\cos(\\\\text{Angle}) = \\\\frac{\\\\text{Adjacent}}{\\\\text{Hypotenuse}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\cos(\\\\var{angle}) = \\\\frac{x}{\\\\var{ab}}\\\\]

and rearrange to give:

\\n

\\\\[ x = \\\\var{ab} \\\\times \\\\cos(\\\\var{angle}) \\\\]

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\var{precround(ab*cos(pi*angle/180),4)}\\\\]

\\n

Round as required:

\\n

\\\\[ x = \\\\var{precround(ab*cos(pi*angle/180),2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "tan_ac": {"name": "tan_ac", "group": "advice", "definition": "\"

In this situation $x$ is a side.  We label the relevant sides of the triangle \\'opposite\\', \\'adjacent\\' and \\'hypotenuse\\' in relation to the angle we know:

\\n

$\\\\text{Opposite} = \\\\var{bc}$
$\\\\text{Adjacent} = x$

We have \\'O\\' and \\'A\\' in SOHCAHTOA, so we know we need to use the $\\\\tan$ formula:

\\n

\\\\[ \\\\tan(\\\\text{Angle}) = \\\\frac{\\\\text{Opposite}}{\\\\text{Adjacent}}\\\\]

\\n

Now we subsitute the values we have in this particular question

\\n

\\\\[ \\\\tan(\\\\var{angle}) = \\\\frac{\\\\var{bc}}{x}\\\\]

and rearrange to give:

\\n

\\\\[ x = \\\\frac{\\\\var{bc}}{\\\\tan(\\\\var{angle})} \\\\]

Make sure your calculator is set to \\'degree\\' mode, if you get an odd answer you are likely in the wrong mode!

\\n

\\\\[ x = \\\\var{precround(bc/tan(pi*angle/180),4)}\\\\]

\\n

Round as required:

\\n

\\\\[ x = \\\\var{precround(bc/tan(pi*angle/180),2)}\\\\]

\"", "description": "", "templateType": "long string", "can_override": false}, "angle": {"name": "angle", "group": "Unnamed group", "definition": "If(SCT='c',arccos(ac/ab),if(SCT = 's',arcsin(bc/ab),arctan(bc/ac)))", "description": "", "templateType": "anything", "can_override": false}, "gen_ac": {"name": "gen_ac", "group": "Unnamed group", "definition": "random(3 .. 12#0.1)", "description": "", "templateType": "randrange", "can_override": false}, "gen_bc": {"name": "gen_bc", "group": "Unnamed group", "definition": "random(5 .. 15#0.1)", "description": "", "templateType": "randrange", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "300"}, "ungrouped_variables": [], "variable_groups": [{"name": "Unnamed group", "variables": ["ab", "ac", "bc", "diagram", "SCT", "AngORside", "answer", "angle", "gen_ac", "gen_bc"]}, {"name": "triangle types", "variables": ["d_t_a_2", "d_t_s_1", "d_s_a_1", "d_c_a_1", "d_c_s_1", "d_s_s_1", "d_c_s_2", "d_t_a_1", "d_t_s_2", "d_s_a_2", "d_s_s_2", "d_c_a_2"]}, {"name": "advice", "variables": ["advice", "tan_a", "sin_a", "cos_a", "sin_bc", "cos_ac", "tan_ac"]}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Given a right angled triangle as shown calculate the value of x.

\n


Give your answer in degrees (make sure you calculator is in the right mode), correct to 2 decimal place.

", "minValue": "answer", "maxValue": "answer", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "2", "precisionPartialCredit": "100", "precisionMessage": "", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "GM01 Area of a circle", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Ben McGovern", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4872/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "

Finding the area of a circle when given the diameter of the circle.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Find the area of a circle with diameter $\\var{d}$ cm giving your answer to 1 decimal place.

\n

{geogebra_applet('https://www.geogebra.org/m/ngcchpcj',[d: d])}

", "advice": "

To calculate the area of a circle we want to use the formula \\[ A = \\pi r^2, \\]

\n

where $r$ is the radius of the circle.

\n

So, if the diameter, d, is $\\var{d}$ cm, then the radius is, $r=\\frac{d}{2}=\\var{{d}/2}$ cm, then

\n

\\[ \\begin{split} Area &\\,=\\var{{d}/2}^2 \\times \\pi \\text{ cm}^2 \\\\ &\\,= \\simplify[all, fractionNumbers]{{{{d}^2/4}}pi} \\text{ cm}^2 \\\\ &\\,= \\var{precround({d}^2/4*pi,1)} \\text{ cm}^2. \\end{split} \\]

\n

Use this link to find some resources to help you revise how to calculate the area of a circle.

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"d": {"name": "d", "group": "Ungrouped variables", "definition": "random(6,8,10,12,14,16,18,20)", "description": "", "templateType": "anything", "can_override": true}, "t": {"name": "t", "group": "Ungrouped variables", "definition": "random(2..6)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["d", "t"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$Area=$ [[0]] $\\text{ cm}^2$

", "gaps": [{"type": "jme", "useCustomName": true, "customName": "Gap 0", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": false, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "alternatives": [{"type": "jme", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "alternativeFeedbackMessage": "", "useAlternativeFeedback": false, "answer": "precround({{d/2}}^2*pi,1)", "answerSimplification": "fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "answer": "precround({{d/2}}^2*pi,1)", "answerSimplification": "fractionNumbers", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": []}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "GM04 Volume of a semi-cylinder", "extensions": ["geogebra"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Lauren Desoysa", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21504/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Find the volume of a semicylinder from a diagram.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Calculate the volume of this (all lengths are in $cm$):

\n

{geogebra_applet('https://www.geogebra.org/m/vdbvgwkf',[height: height,radius: radius])}

", "advice": "

In order to work out the volume of a prism you need to work out the cross sectional area first. In this question the cross section is a semi-circle. Find the area of a circle and then half it.

\n

The area of a semi-circle is given by:

\n

\\begin{align} \\frac{\\pi\\times r^2}{2}  \\end{align}

\n

where $r$ is the radius of the circle.

\n

\\begin{align} \\frac{\\pi\\times\\var{radius}^2}{2}  = \\var{precround(semiarea,2)}... \\quad  cm^2 \\end{align}

\n

Then to calculate the volume you multiply the cross-sectional area by the length,

\n

\\begin{align} \\frac{\\pi\\times r^2}{2} \\times l  \\end{align}

\n

\\begin{align} \\var{precround(semiarea,2)}... \\times \\var{height} = \\var{precround(answer,2)}cm^3.\\end{align}

\n

\n

Use this link to find resources to help you revise how to calculate the volume of a prism.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"height": {"name": "height", "group": "Ungrouped variables", "definition": "random(8 .. 20#1)", "description": "", "templateType": "randrange", "can_override": false}, "radius": {"name": "radius", "group": "Ungrouped variables", "definition": "random(4 .. 7#0.5)", "description": "", "templateType": "randrange", "can_override": false}, "answer": {"name": "answer", "group": "Ungrouped variables", "definition": "(pi*radius^2)*height/2", "description": "", "templateType": "anything", "can_override": false}, "semiarea": {"name": "semiarea", "group": "Ungrouped variables", "definition": "pi*radius^2/2", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["height", "radius", "answer", "semiarea"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]]$cm^3$

", "gaps": [{"type": "numberentry", "useCustomName": true, "customName": "Volume", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "answer", "maxValue": "answer", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "2", "precisionPartialCredit": 0, "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "LM02 Adding matrices", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Generates two sets of matrices that can be added and asks the student to add them. Will ensure that the dimensions in part a) are different to the dimensions in part b) to offer some variety.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Adding Matrices

\n

Calculate the following:

", "advice": "

Matrix addition is fairly straightforward in that each entry is calculated by adding the corresponding entries. For example the top left entry of the answer to part a) can be calculated as $\\var{A[0][0]} + \\var{Apair[0][0]} = \\var{A[0][0] + Apair[0][0]}$. So for this question:

\n

a) $\\var{A}+\\var{Apair} = \\var{A+Apair}$

\n

b) $\\var{B}+\\var{Bpair} = \\var{B+Bpair}$

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"A": {"name": "A", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[0]),row[0]))", "description": "", "templateType": "anything", "can_override": false}, "col": {"name": "col", "group": "Ungrouped variables", "definition": "repeat(random(2..3),3)", "description": "", "templateType": "anything", "can_override": false}, "row": {"name": "row", "group": "Ungrouped variables", "definition": "repeat(random(2..3),3)", "description": "", "templateType": "anything", "can_override": false}, "B": {"name": "B", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[1]),row[1]))", "description": "", "templateType": "anything", "can_override": false}, "C": {"name": "C", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[2]),row[2]))", "description": "", "templateType": "anything", "can_override": false}, "Apair": {"name": "Apair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[0]),row[0]))", "description": "", "templateType": "anything", "can_override": false}, "Bpair": {"name": "Bpair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[1]),row[1]))", "description": "", "templateType": "anything", "can_override": false}, "Cpair": {"name": "Cpair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[2]),row[2]))", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "col[0]<>row[0] AND col[0]<>col[1]", "maxRuns": 100}, "ungrouped_variables": ["col", "row", "A", "Apair", "B", "Bpair", "C", "Cpair"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "matrix", "useCustomName": true, "customName": "a)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\var{A} + \\var{Apair}=$

", "correctAnswer": "{A}+{Apair}", "correctAnswerFractions": false, "numRows": "{row[0]}", "numColumns": "{col[0]}", "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "b)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\var{B} +\\var{Bpair}$

", "correctAnswer": "{B}+{Bpair}", "correctAnswerFractions": false, "numRows": "{row[1]}", "numColumns": "{col[1]}", "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "LM04 Multiplying matrices", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Multiplying Matrices

\n

Calculate the following:

", "advice": "

When you are multiplying two matrices together you need to know what elements of each matrix multiply with each other to produce the answer. In order to look at this let's define the two matrices:

\n

$A=\\var{MatrixA1}$

\n

and

\n

$B=\\var{MatrixA2}.$

\n

These two matrices match the dimensions of the two given in is part a) of this question. When they are multiplied together as we have seen the answer will be a $\\var{row[0]}$ by $\\var{col[0]}$ matrix. So we can denote this matrix in the following way:

\n

$\\var{MatrixA1}$X$\\var{MatrixA2}=\\var{Answermatrixa}$

\n

The way in which this is calculated is as follows in terms of a formula:

\n

$\\var{Answermatrixa}=\\var{matrixmultcalc}$

\n

If you are trying to calculate $c_{11}$ for example one way to think of this is to imagine picking up the first column of the second matrix and tipping it on its side and laying it on top of the top row of the first matrix so, for example, $a_{11}$ gets paired with $b_{11}$ and $a_{12}$ gets paired with $b_{21}$ etc. As we can see in the above formula.

\n

\n

a) $\\var{A}$X$\\var{Apair} = \\var{A*Apair}$

\n

b) $\\var{B}$X$\\var{Bpair} = \\var{B*Bpair}$

\n

b) $\\var{C}$X$\\var{Cpair} = \\var{C*Cpair}$

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"A": {"name": "A", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),match[0]),row[0]))", "description": "", "templateType": "anything", "can_override": false}, "col": {"name": "col", "group": "Ungrouped variables", "definition": "repeat(random(1..3),3)", "description": "", "templateType": "anything", "can_override": false}, "B": {"name": "B", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),match[1]),row[1]))", "description": "", "templateType": "anything", "can_override": false}, "C": {"name": "C", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),match[2]),row[2]))", "description": "", "templateType": "anything", "can_override": false}, "Apair": {"name": "Apair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[0]),match[0]))", "description": "", "templateType": "anything", "can_override": false}, "Bpair": {"name": "Bpair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[1]),match[1]))", "description": "", "templateType": "anything", "can_override": false}, "Cpair": {"name": "Cpair", "group": "Ungrouped variables", "definition": "matrix(repeat(repeat(random(-9..9),col[2]),match[2]))", "description": "", "templateType": "anything", "can_override": false}, "match": {"name": "match", "group": "Ungrouped variables", "definition": "repeat(random(2..4),3)", "description": "", "templateType": "anything", "can_override": false}, "Rawanswermatrixa": {"name": "Rawanswermatrixa", "group": "Advice", "definition": "map('c_{'+'{j}'+'{l}}'+latexcodebits(row[0],col[0])[j-1][l-1],[j,l],product(1..row[0],1..col[0]))", "description": "

\"Latexcodebits\" is a JME function written in the Extensions and scripts section. It is a useful function for creating a list of symbols such as \"a_11\" to populate a matrix for the explanation section.

", "templateType": "anything", "can_override": false}, "row": {"name": "row", "group": "Ungrouped variables", "definition": "repeat(random(2..4),3)", "description": "", "templateType": "anything", "can_override": false}, "answermatrixa": {"name": "answermatrixa", "group": "Advice", "definition": "latex('\\\\begin{pmatrix}'+ stringify(rawanswermatrixa) + '\\\\end{'+'pmatrix}')", "description": "

\"stringify\" is a javascript written in the Extensions and scripts section - this converts a list of things into a string suitable for latex to read as a matrix.

", "templateType": "anything", "can_override": false}, "RawmatrixA1": {"name": "RawmatrixA1", "group": "Advice", "definition": "map('a_{'+'{j}'+'{l}}'+latexcodebits(row[0],match[0])[j-1][l-1],[j,l],product(1..row[0],1..match[0]))", "description": "", "templateType": "anything", "can_override": false}, "RawmatrixA2": {"name": "RawmatrixA2", "group": "Advice", "definition": "map('b_{'+'{j}'+'{l}}'+Latexcodebits(match[0],col[0])[j-1][l-1],[j,l],product(1..match[0],1..col[0]))", "description": "", "templateType": "anything", "can_override": false}, "matrixA1": {"name": "matrixA1", "group": "Advice", "definition": "latex('\\\\begin{pmatrix}'+ stringify(RawmatrixA1) + '\\\\end{'+'pmatrix}')", "description": "", "templateType": "anything", "can_override": false}, "matrixA2": {"name": "matrixA2", "group": "Advice", "definition": "latex('\\\\begin{pmatrix}'+ stringify(RawmatrixA2) + '\\\\end{'+'pmatrix}')", "description": "", "templateType": "anything", "can_override": false}, "Rawmatrixmultcalc": {"name": "Rawmatrixmultcalc", "group": "Advice", "definition": "map('a_\\{{r+1}{t+1}\\}'+'\\\\cdot'+' b_\\{{t+1}{s+1}\\}'+latexcodebitsproductcalc(row[0],match[0],col[0])[r][s][t],[r,s,t],product(0..(row[0]-1),0..(col[0]-1),0..(match[0]-1)))", "description": "", "templateType": "anything", "can_override": false}, "matrixmultcalc": {"name": "matrixmultcalc", "group": "Advice", "definition": "latex('\\\\begin{pmatrix}'+ stringify(rawmatrixmultcalc) +'\\\\end{'+'pmatrix}')", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["col", "row", "match", "A", "Apair", "B", "Bpair", "C", "Cpair"], "variable_groups": [{"name": "matrix notation", "variables": []}, {"name": "Advice", "variables": ["RawmatrixA1", "matrixA1", "RawmatrixA2", "matrixA2", "Rawanswermatrixa", "answermatrixa", "Rawmatrixmultcalc", "matrixmultcalc"]}], "functions": {"Latexcodebits": {"parameters": [["m", "number"], ["n", "number"]], "type": "list", "language": "jme", "definition": "repeat(repeat('&',n-1)+['\\\\\\\\'],m-1)+[repeat('&',n-1)+['']]"}, "stringify": {"parameters": [["input", "list"]], "type": "string", "language": "javascript", "definition": "var output = '';\nvar i;\nfor (i = 0; i < input.length; i++) {\n output += input[i];\n} \nreturn output;"}, "Latexcodebitsproductcalc": {"parameters": [["m", "number"], ["k", "number"], ["n", "number"]], "type": "anything", "language": "jme", "definition": "repeat(repeat(repeat('+',k-1)+['&'],n-1)+[repeat('+',k-1)+['\\\\\\\\']],m-1)+[repeat(repeat('+',k-1)+['&'],n-1)+[repeat('+',k-1)+['']]]"}}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "matrix", "useCustomName": true, "customName": "a)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\var{A}$X$\\var{Apair}=$

", "correctAnswer": "{A}*{Apair}", "correctAnswerFractions": false, "numRows": "{row[0]}", "numColumns": "{col[0]}", "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "b)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\var{B}$X$\\var{Bpair}$

", "correctAnswer": "{B}*{Bpair}", "correctAnswerFractions": false, "numRows": "{row[1]}", "numColumns": "{col[1]}", "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "c)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\var{C}$X$\\var{Cpair}$

", "correctAnswer": "{C}*{Cpair}", "correctAnswerFractions": false, "numRows": "{row[2]}", "numColumns": "{col[2]}", "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "LV01 Adding and subtracting vectors", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Vector Arithmetic

\n

Work through the following questions to ensure you know how to add and subtract vectors in 2D.

\n

For the whole of this question:

\n

$\\bf{a} = \\var{a}$ and $\\bf{b}=\\var{b}$.

", "advice": "

The vectors in this question have two dimensions but the idea of addition and subtraction of vectors works in any number of dimensions (as long as all the vectors being added or subtracted have the same dimensions as each other).

\n

To add two vectors you simply add their corresponding elements. In general:

\n

$$
\\left(\\begin{array}{c}
a \\\\
b \\\\
\\end{array}\\right) +
\\left(\\begin{array}{c}
c \\\\
d \\\\
\\end{array}\\right) =
\\left(\\begin{array}{c}
a+c \\\\
b+d \\\\
\\end{array}\\right).
$$

\n

Subtraction works in the same way so we have:

\n

1)

\n

$$
\\var{a} + \\var{b} = \\var{a+b}.
$$

\n

2)

\n

$$
\\var{a} - \\var{b} = \\var{a-b}.
$$

\n

In order to undertstand the third part of the question you need to know what a \"position vector\" and \"direction vector\" are.

\n

A position vector is defined as a vector that symbolises the location of any given point with respect to the origin. It can be thought of as a coordinate point, but written as a column vector - top entry is the \"x-coordinate\" and the bottome entry is the \"y-coordinate\".

\n

A direction vector is defined as a vector that symbolises a direction and a distance in that direction but with no specified \"starting point\". In 2D it can be summarized as an instruction to go the top element number of units left or right based on the sign of the element and the bottom element number of units up or down based on the sign of the element.

\n

So the direction vector from $A$ to $B$ can be worked out by looking at a route from $A$ to $B$ that travels along the position vectors given. Starting at $A$ we have to go backwards down $\\bf{a}$ to the origin and then forwards along $\\bf{b}$. This corresponds to doing \"minus\" $\\bf{a}$ and \"positive\" $\\bf{b}$:

\n

3)

\n

$$
\\vec{AB} = (-)\\bf{a} + \\bf{b} = \\bf{b}-\\bf{a} = \\var{b}-\\var{a} = \\var{b-a}.
$$

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "vector(repeat(random(-4..4),2))", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "vector(repeat(random(-4..4),2))", "description": "", "templateType": "anything", "can_override": false}, "answeradd": {"name": "answeradd", "group": "Ungrouped variables", "definition": "a+b", "description": "", "templateType": "anything", "can_override": false}, "answersub": {"name": "answersub", "group": "Ungrouped variables", "definition": "a-b", "description": "", "templateType": "anything", "can_override": false}, "answerAB": {"name": "answerAB", "group": "Ungrouped variables", "definition": "b-a", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "answeradd", "answersub", "answerAB"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "matrix", "useCustomName": true, "customName": "1)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Calculate $\\bf{a}+\\bf{b}$.

", "correctAnswer": "answeradd", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "2)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Calculate $\\bf{a} - \\bf{b}$.

", "correctAnswer": "answersub", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "3)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Let $\\bf{a}$ be the position vector of point $A$ and $\\bf{b}$ be the position vector of point $B$. Find the direction vector $\\vec{AB}$.

", "correctAnswer": "answerab", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "LV02 Scalar multiplication of vectors", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Vector Arithmetic

\n

Work through the following questions exploring how to multiply a vector by a scalar.

\n

For the whole of this question:

\n

$\\bf{a} = \\var{a}$ and $\\bf{b}=\\var{b}$.

", "advice": "

The vectors in this question have two dimensions but the ideas herein work in any number of dimensions.

\n

To multiply a vector by a scalar (number) you just multiply each element by that scalar:

\n

$$
k\\left(\\begin{array}{c}
a \\\\
b \\\\
\\end{array}\\right) =
\\left(\\begin{array}{c}
ak \\\\
bk \\\\
\\end{array}\\right).
$$

\n

So we have:

\n

1)

\n

$$
\\var{m}\\var{a} = \\var{m*a}.
$$

\n

The second and third part of this question just combine this idea of multiplying a vector by a scalar and the idea that addition and subtraction work by just calculating element by element (as long as all the vectors involved have the same dimensions).  

\n

2)

\n

$$
\\var{p}\\var{a} + \\var{q}\\var{b} =
\\left(\\begin{array}{c}
\\var{p} \\times \\var{a[0]} + \\var{q} \\times \\var{b[0]} \\\\
\\var{p}\\times \\var{a[1]} + \\var{q} \\times \\var{b[1]}\\\\
\\end{array}\\right) = \\var{p*a+q*b}.
$$

\n

3)

\n

$$
\\var{r}\\var{a} - \\var{s}\\var{b} =
\\left(\\begin{array}{c}
\\var{r} \\times \\var{a[0]} - \\var{s} \\times \\var{b[0]} \\\\
\\var{s}\\times \\var{a[1]} - \\var{s} \\times \\var{b[1]}\\\\
\\end{array}\\right) = \\var{r*a-s*b}.
$$

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "vector(repeat(random(-4..4),2))", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "vector(repeat(random(-4..4),2))", "description": "", "templateType": "anything", "can_override": false}, "answeradd": {"name": "answeradd", "group": "Ungrouped variables", "definition": "p*a+q*b", "description": "", "templateType": "anything", "can_override": false}, "answersub": {"name": "answersub", "group": "Ungrouped variables", "definition": "r*a-s*b", "description": "", "templateType": "anything", "can_override": false}, "p": {"name": "p", "group": "Ungrouped variables", "definition": "random(-9..9 except [-1,0,1,m])", "description": "", "templateType": "anything", "can_override": false}, "q": {"name": "q", "group": "Ungrouped variables", "definition": "random(-9..9 except [-1,0,1,p,m])", "description": "", "templateType": "anything", "can_override": false}, "m": {"name": "m", "group": "Ungrouped variables", "definition": "random(-9..9 except [-1,0,1])", "description": "", "templateType": "anything", "can_override": false}, "answerma": {"name": "answerma", "group": "Ungrouped variables", "definition": "m*a", "description": "", "templateType": "anything", "can_override": false}, "r": {"name": "r", "group": "Ungrouped variables", "definition": "random(2..9 except [p,m,q])", "description": "", "templateType": "anything", "can_override": false}, "s": {"name": "s", "group": "Ungrouped variables", "definition": "random(2..9 except [p,m,q,r])", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "m", "p", "q", "r", "s", "answerma", "answeradd", "answersub"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "matrix", "useCustomName": true, "customName": "1)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Calculate $\\var{m}\\bf{a}$.

", "correctAnswer": "answerma", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "2)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Calculate $\\var{p}\\bf{a}+\\var{q}\\bf{b}$.

", "correctAnswer": "answeradd", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}, {"type": "matrix", "useCustomName": true, "customName": "3)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Calculate $\\var{r}\\bf{a} - \\var{s}\\bf{b}$.

", "correctAnswer": "answersub", "correctAnswerFractions": false, "numRows": "2", "numColumns": 1, "allowResize": false, "tolerance": 0, "markPerCell": false, "allowFractions": false, "minColumns": 1, "maxColumns": 0, "minRows": 1, "maxRows": 0, "prefilledCells": ""}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "LV05 Scalar product of 3D vectors", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

It is given $\\bf{a} = \\var{a}$ and $\\bf{b} = \\var{b}$.

\n

Find the scalar (or dot) product of $\\bf{a}$ and $\\bf{b}$.

", "advice": "

It is important to note that for vectors there is more than one type of multiplication. This question is specifically about the scalar (or dot) product.

\n

For the vectors $ \\mathbf v = \\pmatrix{v_1 \\\\ v_2 \\\\ v_3},\\, \\mathbf w = \\pmatrix{w_1 \\\\ w_2 \\\\ w_3},$ the scalar (or dot) product is defined as

\n

$$
\\mathbf{v \\cdot w} = v_1 \\times w_1 + v_2 \\times w_2 + v_3 \\times w_3.
$$

\n

So for this question:

\n

$$
\\bf{a} = \\var{a} \\qquad \\text{and} \\qquad \\bf{b} = \\var{b}\\\\
\\bf{a} \\cdot \\bf{b} = \\var{a[0]}\\times\\var{b[0]} + \\var{a[1]}\\times\\var{b[1]} + \\var{a[2]}\\times\\var{b[2]} = \\var{adotb}.
$$

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "vector(repeat(random(-9..9 except 0),3))", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "vector(repeat(random(-9..9 except 0),3))", "description": "", "templateType": "anything", "can_override": false}, "adotb": {"name": "adotb", "group": "Ungrouped variables", "definition": "dot(a,b)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b", "adotb"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": true, "customName": "Scalar product", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

$\\bf{a} \\cdot \\bf{b} =$ [[0]]

", "gaps": [{"type": "numberentry", "useCustomName": true, "customName": "scalar product", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "adotb", "maxValue": "adotb", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NA03 Dosage Calculation 2", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Division resulting in decimals in the context of a dose per hour.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

You are required to give an infusion of a drug of {d}ml over {t}hours, what is the rate per hour?

\n

(answer to 1 decimal place)

", "advice": "\n\n\n\n\n\n
\n
\n

If there is {d}ml in {t} hours, then {d} should be divided by {t} to get {answert}ml per hour.

\n

\n

Make use of the following resource(s) to revise if necessary:

\n

Use this link to find some resources which will help you revise this topic

\n

If you were unsure how to round your answer then look at the following resource(s):

\n

Use this link to find some resources which will help you revise this topic

\n
\n
\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"d": {"name": "d", "group": "Ungrouped variables", "definition": "random(250 .. 1000#50)", "description": "", "templateType": "randrange", "can_override": false}, "t": {"name": "t", "group": "Ungrouped variables", "definition": "random(4 .. 10#1)", "description": "", "templateType": "randrange", "can_override": false}, "answert": {"name": "answert", "group": "Ungrouped variables", "definition": "dpformat(answer,1)", "description": "", "templateType": "anything", "can_override": false}, "answer": {"name": "answer", "group": "Ungrouped variables", "definition": "d/t", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["d", "t", "answert", "answer"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]] ml per hour

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "d/t", "maxValue": "d/t", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "1", "precisionPartialCredit": "0", "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NA17 Worded proportion", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Andrew Neate", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21832/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Proportional calculation in context.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

If {n1} adult cinema tickets cost £{n1price}, how much would it cost for {n2} adults to buy tickets to the cinema?

", "advice": "

If {n1} tickets cost £{n1price} then we can calculate that one ticket costs

\n

\\[£\\var{n1price}\\div\\var{n1}=£\\var{price}.\\]

\n

This means that {n2} tickets cost $\\var{n2}\\times£\\var{price}=£\\var{n2price}$

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"n1": {"name": "n1", "group": "Ungrouped variables", "definition": "random(2..9)", "description": "", "templateType": "anything", "can_override": false}, "price": {"name": "price", "group": "Ungrouped variables", "definition": "precround(random(2..9 # 0.01),2)", "description": "", "templateType": "anything", "can_override": false}, "n2": {"name": "n2", "group": "Ungrouped variables", "definition": "random(2..9 except n1)", "description": "", "templateType": "anything", "can_override": false}, "n1price": {"name": "n1price", "group": "Ungrouped variables", "definition": "precround(n1*price,2)", "description": "", "templateType": "anything", "can_override": false}, "n2price": {"name": "n2price", "group": "Ungrouped variables", "definition": "precround(n2*price,2)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["n1", "price", "n2", "n1price", "n2price"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

£[[0]]

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "n2*price", "maxValue": "n2*price", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "precisionType": "dp", "precision": "2", "precisionPartialCredit": 0, "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": true, "showPrecisionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NF03 Rounding SF (decimal)", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}, {"name": "Stanislav Duris", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1590/"}, {"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}, {"name": "Oliver Spenceley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23557/"}], "tags": ["rounding"], "metadata": {"description": "

Round numbers to a given number of significant figures.

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "", "advice": "

The first thing to do when we are rounding numbers is to identify the last digit we are keeping.

\n

When you're asked to round your answer to a number of significant figures, you need to decide whether to keep the last digit same (rounding down) or increase it by 1 (rounding up). If the following digit is less than 5 we round down and we round up when the next digit is 5 or more.

\n

To write it down in steps:

\n
    \n
      \n
        \n
          \n
        1. Identify the last digit we need to keep.
        2. \n
        3. Look at the following digit.
        4. \n
        5. If it's 5 or more, increase the previous digit by one.
        6. \n
        7. If it's 4 or less, keep the previous digit the same.
        8. \n
        9. Fill any spaces to the right of the digit with zeros if needed.
        10. \n
        \n
      \n
    \n
\n

It is important to keep in mind that if the digit we are increasing is 9, it becomes zero and we increase the previous digit instead. If this digit is 9 as well, we move along to the left side until we find a digit less than 9.

\n

The last digit we need to keep will depend on how many zeros there are.  We don't consider leading zeros to be significant,
i.e. 0.03 and 0.3 both have 1 significant figure (but 0.30 has two significant figures, since the second zero isn't a 'leading' zero).

\n

i)

\n

We round $\\var{e1}$ to 1 significant figure. The first non-zero digit is $\\var{edig[4]}$, followed by $\\var{edig[3]}$. This is lower than 5 so we round downmore than 5 so we round up to get $\\var{sigformat(e1,1)}$.

\n

ii)

\n

We round $\\var{e1}$ to {sf} significant figures. The first non-zero digit is $\\var{edig[4]}$. The second following digit is $\\var{edig[3]}$, the third following digit is $\\var{edig[2]}$ and the fourth following digit is $\\var{edig[1]}$. The digit following the last digit we are keeping is $\\var{edig[2]}$$\\var{edig[1]}$$\\var{edig[0]}$, so we round to get $\\var{sigformat(e1, sf)}$. These are our {sf} significant figures. 

\n

\n

Use this link to find some resources which will help you revise this topic.

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"edig": {"name": "edig", "group": "Ungrouped variables", "definition": "repeat(random(1..9), 5)", "description": "", "templateType": "anything", "can_override": false}, "d1": {"name": "d1", "group": "Ungrouped variables", "definition": "n_from_digits(ddig)", "description": "

Random integer.

", "templateType": "anything", "can_override": false}, "e1": {"name": "e1", "group": "Ungrouped variables", "definition": "n_from_digits(edig)*10^(random(-6,-7,-8))", "description": "

Random number with 7 decimal places.

", "templateType": "anything", "can_override": false}, "ddig": {"name": "ddig", "group": "Ungrouped variables", "definition": "repeat(random(1..9), 6)", "description": "", "templateType": "anything", "can_override": false}, "sf": {"name": "sf", "group": "Ungrouped variables", "definition": "3", "description": "

Number of significant figures to round.

", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["sf", "ddig", "edig", "d1", "e1"], "variable_groups": [], "functions": {"n_from_digits": {"parameters": [["digits", "list"]], "type": "number", "language": "jme", "definition": "if(\n len(digits)=0,\n 0,\n digits[0]+10*n_from_digits(digits[1..len(digits)])\n)"}}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Round $\\var{e1}$

\n

iii) $\\var{e1}$ rounded to 1 significant figure is:  [[0]]

\n

iv) $\\var{e1}$ rounded to {sf} significant figures is:  [[1]]

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "siground(e1, 1)", "maxValue": "siground(e1, 1)", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "siground(e1, sf)", "maxValue": "siground(e1, sf)", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NF23 Equivalent Ratios", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Picking a ratio out of a list that is not equivalent to the others.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Which of the following ratios is not equivalent to the others?

", "advice": "

The key to this question is understanding how to simplify ratios. In this case all the ratios simplify to $\\var{a}:\\var{b}$ except for $\\var{6*a}:\\var{7*b}$.

\n

\n

For more help with this topic have a look at the resources here.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"a": {"name": "a", "group": "Ungrouped variables", "definition": "random(2 .. 6#1)", "description": "", "templateType": "randrange", "can_override": false}, "b": {"name": "b", "group": "Ungrouped variables", "definition": "a+1", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["a", "b"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "1_n_2", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minMarks": 0, "maxMarks": 0, "shuffleChoices": true, "displayType": "radiogroup", "displayColumns": 0, "showCellAnswerState": true, "choices": ["$\\var{a}:\\var{b}$", "$\\var{2*a}:\\var{2*b}$", "$\\var{3*a}:\\var{3*b}$", "$\\var{5*a}:\\var{5*b}$", "$\\var{6*a}:\\var{7*b}$"], "matrix": [0, 0, 0, 0, "1"], "distractors": ["", "", "", "", ""]}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NU02 Convert Units (m/s and km/h)", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Unit conversion between two compound units.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

A Cheetah runs at a speed of {speedkm} kilometres per hour (km/h). What is the Cheetah's speed in metres per second (m/s)?

\n

Give your ansswer to 2 decimal places where appropriate.

", "advice": "

There are a number of ways to work out the conversion. Here are a couple of suggestions.

\n

METHOD 1

\n

Since there are $1000$m in $1$km we first multiply by $1000$ to get the speed in metres per hour:

\n

\\begin{equation} 1000*\\var{speedkm} = \\var{step1}\\end{equation}

\n

Then we divide by $3600$ since that is the number of seconds in an hour to get the speed in metres per second:

\n

\\begin{equation} \\frac{\\var{step1}}{3600} = \\var{speedms} \\end{equation}

\n

Finally we round off to 2 decimal places as required, $\\var{roundanswer}$m/s.

\n

METHOD 2

\n

We can actually do all of the above in one step of working by using a single conversion factor. Since there are $1000$m in a km and $3600$ seconds in an hour, we can calaculate the conversion factor:

\n

\\begin{equation} \\frac{3600}{1000} = 3.6 \\end{equation}

\n

and then simply divide by that conversion factor:

\n

\\begin{equation} \\frac{\\var{speedkm}}{3.6} = \\var{speedms} \\end{equation}

\n

finally rounding off as before, $\\var{roundanswer}$m/s.

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"speedkm": {"name": "speedkm", "group": "Ungrouped variables", "definition": "random(70 .. 120#10)", "description": "", "templateType": "randrange", "can_override": false}, "speedms": {"name": "speedms", "group": "Ungrouped variables", "definition": "1000*speedkm/3600", "description": "", "templateType": "anything", "can_override": false}, "step1": {"name": "step1", "group": "Ungrouped variables", "definition": "1000*speedkm", "description": "", "templateType": "anything", "can_override": false}, "roundanswer": {"name": "roundanswer", "group": "Ungrouped variables", "definition": "dpformat(speedms,2)", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["speedkm", "speedms", "step1", "roundanswer"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]]m/s

", "gaps": [{"type": "numberentry", "useCustomName": true, "customName": "answer", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "speedms", "maxValue": "speedms", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "speedms", "precisionType": "dp", "precision": "2", "precisionPartialCredit": 0, "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NU05 Convert Units - metric prefixes - milligrams to grams", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Will Morgan", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/21933/"}], "tags": [], "metadata": {"description": "

Using prefixes (milli) in this case.

", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Express {x} milligrams ($mg$) in grams ($g$). Give your answer to 3 decimal places. 

", "advice": "

There are $1000mg$ in $1g$. To work out the conversion: $\\frac{\\var{x}}{1000} = \\var{answer}$.

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"x": {"name": "x", "group": "Ungrouped variables", "definition": "random(100 .. 5200#1)", "description": "", "templateType": "randrange", "can_override": false}, "answer": {"name": "answer", "group": "Ungrouped variables", "definition": "x/1000", "description": "", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["x", "answer"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

[[0]]$g$

", "gaps": [{"type": "numberentry", "useCustomName": true, "customName": "answer", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "answer", "maxValue": "answer", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "answer", "precisionType": "dp", "precision": "3", "precisionPartialCredit": 0, "precisionMessage": "You have not given your answer to the correct precision.", "strictPrecision": false, "showPrecisionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "SM10 Estimated Mean", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Megan Oliver", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23526/"}], "tags": [], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "

Tina needs to take a train to work.

\n

The table below shows information about how long the train is delayed for on each day.

\n

The policy of the train company is that if your train is delayed for longer than 30 minutes, you will recieve a 50% discount on your train ticket.

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
Delay TimeFrequency 
0 < t $\\leq$ 10{f1}
10 < t $\\leq$ 20{f2}
20 < t $\\leq$ 30{f3}
30 < t $\\leq$ 40{f4}
40 < t $\\leq$ 50{f5}
", "advice": "

a)

\n

To find the estimated mean we must work out the midpoint of the delay time intervals and multiply this by the frequency to create the $fx$ column on the table.

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
Delay TimeFrequency MidpointFrequency $\\times$ Midpoint, $fx$
0 < t $\\leq$ 10{f1}5= 5$\\times\\var{f1} = \\var{f1m}$
10 < t $\\leq$ 20{f2}15= 15$\\times\\var{f2} = \\var{f2m}$
20 < t $\\leq$ 30{f3}25= 25$\\times\\var{f3} = \\var{f3m}$
30 < t $\\leq$ 40{f4}35= 35$\\times\\var{f4} = \\var{f4m}$
40 < t $\\leq$ 50{f5}45= 45$\\times\\var{f5} = \\var{f5m}$
\n

Now to find the mean we calculate the sum of the $fx$ column and divide it by the sum of the frequencies:

\n

Estimated Mean = $\\frac{\\var{f1m}+\\var{f2m}+\\var{f3m}+\\var{f4m}+\\var{f5m}}{5+15+25+35+45} = \\frac{\\var{freqmid}}{\\var{sum}} = \\var{meana}.$

\n

Hence the estimated mean delay time is $\\var{mean}$ to two decimal places.

\n

\n

b)

\n

To work out what percentage of delays that were over 30 minutes we first need to calculate the number of days where the train was delayed for over 30 minutes. 

\n

The number of delays that over 30 minutes is $\\var{f4}+\\var{f5} = \\var{f4+f5}$.

\n

We divide this by the total number of deliveries to find the fraction of delays that were over 30 minutes and then multiply this number by 100 to find the percentage:

\n

$\\frac{\\var{f4+f5}}{\\var{f1}+\\var{f2}+\\var{f3}+\\var{f4}+\\var{f5}} \\times 100\\% = \\frac{\\var{f4+f5}}{\\var{sum}} \\times 100\\% = \\var{percentagea} \\times 100\\%$.

\n

Hence, the percentage of delays that were over 30 minutes is $\\var{percentage}\\%$ to two decimal places.

\n

\n

c)

\n

The percentage of delays that take over 40 minutes is:

\n

$\\frac{\\var{f5}}{\\var{f1}+\\var{f2}+\\var{f3}+\\var{f4}+\\var{f5}} \\times 100\\% = \\frac{\\var{f5}}{\\var{sum}} \\times 100\\% = \\var{percent40} \\times 100\\%$, to one decimal place.

\n

So, only $\\var{percent40}\\%$ of the time, delays were longer than 40 minutes so the manager would probably wanto the policy changed to 40 minutes.

\n

\n

Use this link to find some resources which will help you revise this topic.

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"f1": {"name": "f1", "group": "Ungrouped variables", "definition": "random(1 .. 20#1)", "description": "

Frequency 1

", "templateType": "randrange", "can_override": false}, "f2": {"name": "f2", "group": "Ungrouped variables", "definition": "random(1 .. 20#1)", "description": "

Frequency 2

", "templateType": "randrange", "can_override": false}, "f3": {"name": "f3", "group": "Ungrouped variables", "definition": "random(1 .. 20#1)", "description": "

Frequency 3

", "templateType": "randrange", "can_override": false}, "f4": {"name": "f4", "group": "Ungrouped variables", "definition": "random(1 .. 20#1)", "description": "

Frequency 4

", "templateType": "randrange", "can_override": false}, "f5": {"name": "f5", "group": "Ungrouped variables", "definition": "random(1 .. 5#1)", "description": "

Frequency 5

", "templateType": "randrange", "can_override": false}, "meana": {"name": "meana", "group": "Ungrouped variables", "definition": "freqmid/sum", "description": "

Mean

", "templateType": "anything", "can_override": false}, "sum": {"name": "sum", "group": "Ungrouped variables", "definition": "f1+f2+f3+f4+f5", "description": "

Sum of frequencies

", "templateType": "anything", "can_override": false}, "f1m": {"name": "f1m", "group": "Ungrouped variables", "definition": "5*f1", "description": "

Frequency * midpoint 1

", "templateType": "anything", "can_override": false}, "f2m": {"name": "f2m", "group": "Ungrouped variables", "definition": "15*f2", "description": "

Frequency * midpoint 2

", "templateType": "anything", "can_override": false}, "f3m": {"name": "f3m", "group": "Ungrouped variables", "definition": "25*f3", "description": "

Frequency * midpoint 3

", "templateType": "anything", "can_override": false}, "f4m": {"name": "f4m", "group": "Ungrouped variables", "definition": "35*f4", "description": "

Frequency * midpoint 4

", "templateType": "anything", "can_override": false}, "f5m": {"name": "f5m", "group": "Ungrouped variables", "definition": "45*f5", "description": "

Frequency * midpoint 5

", "templateType": "anything", "can_override": false}, "freqmid": {"name": "freqmid", "group": "Ungrouped variables", "definition": "f1m+f2m+f3m+f4m+f5m", "description": "

Sum of Frequency * midpoint 

", "templateType": "anything", "can_override": false}, "mean": {"name": "mean", "group": "Ungrouped variables", "definition": "precround(meana,2)", "description": "

Mean rounded to two decimal places

", "templateType": "anything", "can_override": false}, "f30": {"name": "f30", "group": "Ungrouped variables", "definition": "f4+f5", "description": "

Sum of 4th & 5th frequencies

", "templateType": "anything", "can_override": false}, "percentagea": {"name": "percentagea", "group": "Ungrouped variables", "definition": "(f30/sum)*100", "description": "

Percentage over 30 mins

", "templateType": "anything", "can_override": false}, "percentage": {"name": "percentage", "group": "Ungrouped variables", "definition": "precround(percentagea,1)", "description": "

Percentage rounded to one decimal place

", "templateType": "anything", "can_override": false}, "percent40": {"name": "percent40", "group": "Ungrouped variables", "definition": "precround(((f5/sum)*100),1)", "description": "

Percentage over 40 mins

", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": ["f1", "f2", "f3", "f4", "f5", "meana", "sum", "f1m", "f2m", "f3m", "f4m", "f5m", "freqmid", "mean", "f30", "percentagea", "percentage", "percent40"], "variable_groups": [], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "numberentry", "useCustomName": true, "customName": "a)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

Using a calculator, calculate an estimate for the mean delay time. Give your answer to two decimal places.

", "minValue": "mean", "maxValue": "mean", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": true, "customName": "b)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

What percentage of delays were over 30 minutes? Give your answer to one decimal place.

", "minValue": "percentage", "maxValue": "percentage", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "jme", "useCustomName": true, "customName": "c)", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

The train company propose that they should only offer the 50% discount if the train is delayed for over 40 minutes.

\n

If you were the manager of the train company would you agree? Type yes or no into the box and think about the reasons for your answer.

", "answer": "yes", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": false, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "caseSensitive": false, "valuegenerators": [{"name": "yes", "value": ""}]}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}, {"name": "NF01 Rounding DP", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "contributors": [{"name": "Stanislav Duris", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/1590/"}, {"name": "Ruth Hand", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3228/"}, {"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}, {"name": "Oliver Spenceley", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/23557/"}], "tags": [], "metadata": {"description": "

Round numbers to a given number of decimal places.

", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "

We can approximate numbers by rounding.

\n

Round $\\var{c1}$ to a given number of decimal places.

", "advice": "

The first thing to do when we are rounding numbers is to identify the last digit we are keeping.

\n

When you're asked to round your answer to a number of decimal places, you need to decide whether to keep the last digit the same (rounding down) or increase it by 1 (rounding up). If the following digit is less than 5 we round down and we round up when the next digit is 5 or more.

\n

To write it down in steps:

\n
    \n
      \n
        \n
          \n
        1. Identify the last digit we need to keep.
        2. \n
        3. Look at the following digit.
        4. \n
        5. If it's 5 or more, increase the previous digit by one.
        6. \n
        7. If it's 4 or less, keep the previous digit the same.
        8. \n
        9. Fill any spaces to the right of the digit with zeros if needed.
        10. \n
        \n
      \n
    \n
\n

It is important to keep in mind that if the digit we are increasing is 9, it becomes zero and we increase the previous digit instead. If this digit is 9 as well, we move along to the left side until we find a digit less than 9.

\n
\n

To round a number to a given number $n$ of decimal places, we look at the $n$th digit after the decimal point.

\n

We have $\\var{c1}$.

\n

i)

\n

We look at the first digit after the decimal point. This is $\\var{cdig[4]}$ and the following digit is $\\var{cdig[3]}$ so we round updown to get $\\var{precround(c1, 1)}$.

\n

ii)

\n

The second digit after the decimal point is $\\var{cdig[3]}$. It is followed by $\\var{cdig[2]}$ so we round updown to get $\\var{precround(c1, 2)}$.

\n

iii)

\n

The 3rd decimal place is $\\var{cdig[2]}$, followed by $\\var{cdig[1]}$. We get $\\var{precround(c1, 3)}$. The 4th decimal place is $\\var{cdig[1]}$, followed by $\\var{cdig[0]}$. We get $\\var{precround(c1, 4)}$.

\n

Use this link to find some resources which will help you revise this topic

\n

", "rulesets": {}, "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"c1": {"name": "c1", "group": "Ungrouped variables", "definition": "n_from_digits(cdig)*10^(-5) + random(1..5)", "description": "

Random number with 5 decimal places.

", "templateType": "anything", "can_override": false}, "cdig": {"name": "cdig", "group": "Ungrouped variables", "definition": "repeat(random(1..9), 5)", "description": "", "templateType": "anything", "can_override": false}, "dp": {"name": "dp", "group": "Ungrouped variables", "definition": "random(3..4)", "description": "

Number of decimal places to round.

", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": "100"}, "ungrouped_variables": ["dp", "cdig", "c1"], "variable_groups": [], "functions": {"n_from_digits": {"parameters": [["digits", "list"]], "type": "number", "language": "jme", "definition": "if(\n len(digits)=0,\n 0,\n digits[0]+10*n_from_digits(digits[1..len(digits)])\n)"}}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "gapfill", "useCustomName": false, "customName": "", "marks": 0, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "

i)   $\\var{c1}$ rounded to 1 decimal place is:  [[0]]

\n

ii)   $\\var{c1}$ rounded to 2 decimal places is:  [[1]]

\n

iii)   $\\var{c1}$ rounded to {dp} decimal places is:  [[2]]

\n

", "gaps": [{"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "precround(c1, 1)", "maxValue": "precround(c1, 1)", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "precround(c1, 2)", "maxValue": "precround(c1, 2)", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}, {"type": "numberentry", "useCustomName": false, "customName": "", "marks": 1, "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "precround(c1, dp)", "maxValue": "precround(c1, dp)", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always"}]}], "allowPrinting": true, "navigation": {"allowregen": true, "reverse": true, "browse": true, "allowsteps": true, "showfrontpage": true, "navigatemode": "sequence", "onleave": {"action": "none", "message": ""}, "preventleave": true, "typeendtoleave": false, "startpassword": "", "autoSubmit": true, "allowAttemptDownload": false, "downloadEncryptionKey": "", "showresultspage": "oncompletion"}, "timing": {"allowPause": true, "timeout": {"action": "none", "message": ""}, "timedwarning": {"action": "none", "message": ""}}, "feedback": {"enterreviewmodeimmediately": true, "showactualmarkwhen": "always", "showtotalmarkwhen": "always", "showanswerstatewhen": "always", "showpartfeedbackmessageswhen": "always", "showexpectedanswerswhen": "inreview", "showadvicewhen": "inreview", "allowrevealanswer": true, "intro": "", "end_message": "

Thank you for completing the Skills Audit for Maths and Stats. Hopefully it has been useful in directing you to resources and services that can support your studies. The Skills Audit for Maths and Stats will remain open to you throughout the academic year and you can always revisit it again later.

\n

For any further information or questions please contact mash@sheffield.ac.uk

", "results_options": {"printquestions": true, "printadvice": true}, "feedbackmessages": [], "reviewshowexpectedanswer": true, "showanswerstate": true, "reviewshowfeedback": true, "showactualmark": true, "showtotalmark": true, "reviewshowscore": true, "reviewshowadvice": true}, "diagnostic": {"knowledge_graph": {"topics": [], "learning_objectives": []}, "script": "diagnosys", "customScript": ""}, "contributors": [{"name": "Mash Sheffield", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/4679/"}], "extensions": ["eukleides", "geogebra"], "custom_part_types": [{"source": {"pk": 2, "author": {"name": "Christian Lawson-Perfect", "pk": 7}, "edit_page": "/part_type/2/edit"}, "name": "List of numbers", "short_name": "list-of-numbers", "description": "

The answer is a comma-separated list of numbers.

\n

The list is marked correct if each number occurs the same number of times as in the expected answer, and no extra numbers are present.

\n

You can optionally treat the answer as a set, so the number of occurrences doesn't matter, only whether each number is included or not.

", "help_url": "", "input_widget": "string", "input_options": {"correctAnswer": "join(\n if(settings[\"correctAnswerFractions\"],\n map(let([a,b],rational_approximation(x), string(a/b)),x,settings[\"correctAnswer\"])\n ,\n settings[\"correctAnswer\"]\n ),\n settings[\"separator\"] + \" \"\n)", "hint": {"static": false, "value": "if(settings[\"show_input_hint\"],\n \"Enter a list of numbers separated by {settings['separator']}.\",\n \"\"\n)"}, "allowEmpty": {"static": true, "value": true}}, "can_be_gap": true, "can_be_step": true, "marking_script": "bits:\nlet(b,filter(x<>\"\",x,split(studentAnswer,settings[\"separator\"])),\n if(isSet,list(set(b)),b)\n)\n\nexpected_numbers:\nlet(l,settings[\"correctAnswer\"] as \"list\",\n if(isSet,list(set(l)),l)\n)\n\nvalid_numbers:\nif(all(map(not isnan(x),x,interpreted_answer)),\n true,\n let(index,filter(isnan(interpreted_answer[x]),x,0..len(interpreted_answer)-1)[0], wrong, bits[index],\n warn(wrong+\" is not a valid number\");\n fail(wrong+\" is not a valid number.\")\n )\n )\n\nis_sorted:\nassert(sort(interpreted_answer)=interpreted_answer,\n multiply_credit(0.5,\"Not in order\")\n )\n\nincluded:\nmap(\n let(\n num_student,len(filter(x=y,y,interpreted_answer)),\n num_expected,len(filter(x=y,y,expected_numbers)),\n switch(\n num_student=num_expected,\n true,\n num_studentThe separate items in the student's answer

", "definition": "let(b,filter(x<>\"\",x,split(studentAnswer,settings[\"separator\"])),\n if(isSet,list(set(b)),b)\n)"}, {"name": "expected_numbers", "description": "", "definition": "let(l,settings[\"correctAnswer\"] as \"list\",\n if(isSet,list(set(l)),l)\n)"}, {"name": "valid_numbers", "description": "

Is every number in the student's list valid?

", "definition": "if(all(map(not isnan(x),x,interpreted_answer)),\n true,\n let(index,filter(isnan(interpreted_answer[x]),x,0..len(interpreted_answer)-1)[0], wrong, bits[index],\n warn(wrong+\" is not a valid number\");\n fail(wrong+\" is not a valid number.\")\n )\n )"}, {"name": "is_sorted", "description": "

Are the student's answers in ascending order?

", "definition": "assert(sort(interpreted_answer)=interpreted_answer,\n multiply_credit(0.5,\"Not in order\")\n )"}, {"name": "included", "description": "

Is each number in the expected answer present in the student's list the correct number of times?

", "definition": "map(\n let(\n num_student,len(filter(x=y,y,interpreted_answer)),\n num_expected,len(filter(x=y,y,expected_numbers)),\n switch(\n num_student=num_expected,\n true,\n num_studentHas every number been included the right number of times?

", "definition": "all(included)"}, {"name": "no_extras", "description": "

True if the student's list doesn't contain any numbers that aren't in the expected answer.

", "definition": "if(all(map(x in expected_numbers, x, interpreted_answer)),\n true\n ,\n incorrect(\"Your answer contains \"+extra_numbers[0]+\" but should not.\");\n false\n )"}, {"name": "interpreted_answer", "description": "A value representing the student's answer to this part.", "definition": "if(lower(studentAnswer) in [\"empty\",\"\u2205\"],[],\n map(\n if(settings[\"allowFractions\"],parsenumber_or_fraction(x,notationStyles), parsenumber(x,notationStyles))\n ,x\n ,bits\n )\n)"}, {"name": "mark", "description": "This is the main marking note. It should award credit and provide feedback based on the student's answer.", "definition": "if(studentanswer=\"\",fail(\"You have not entered an answer\"),false);\napply(valid_numbers);\napply(included);\napply(no_extras);\ncorrectif(all_included and no_extras)"}, {"name": "notationStyles", "description": "", "definition": "[\"en\"]"}, {"name": "isSet", "description": "

Should the answer be considered as a set, so the number of times an element occurs doesn't matter?

", "definition": "settings[\"isSet\"]"}, {"name": "extra_numbers", "description": "

Numbers included in the student's answer that are not in the expected list.

", "definition": "filter(not (x in expected_numbers),x,interpreted_answer)"}], "settings": [{"name": "correctAnswer", "label": "Correct answer", "help_url": "", "hint": "The list of numbers that the student should enter. The order does not matter.", "input_type": "code", "default_value": "", "evaluate": true}, {"name": "allowFractions", "label": "Allow the student to enter fractions?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": false}, {"name": "correctAnswerFractions", "label": "Display the correct answers as fractions?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": false}, {"name": "isSet", "label": "Is the answer a set?", "help_url": "", "hint": "If ticked, the number of times an element occurs doesn't matter, only whether it's included at all.", "input_type": "checkbox", "default_value": false}, {"name": "show_input_hint", "label": "Show the input hint?", "help_url": "", "hint": "", "input_type": "checkbox", "default_value": true}, {"name": "separator", "label": "Separator", "help_url": "", "hint": "The substring that should separate items in the student's list", "input_type": "string", "default_value": ",", "subvars": false}], "public_availability": "always", "published": true, "extensions": []}], "resources": [["question-resources/Picture1_caMIdF1.png", "/srv/numbas/media/question-resources/Picture1_caMIdF1.png"], ["question-resources/Picture2_6KE4ZpW.png", "/srv/numbas/media/question-resources/Picture2_6KE4ZpW.png"]]}