// Numbas version: finer_feedback_settings {"name": "Simultaneous equations", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"name": "Simultaneous equations", "tags": ["algebra", "Algebra", "equations", "Linear equations", "linear equations", "Simultaneous equations", "simultaneous equations", "solving equations", "Solving equations", "system of equations"], "metadata": {"description": "", "licence": "Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International"}, "statement": "", "advice": "", "rulesets": {}, "extensions": [], "builtin_constants": {"e": true, "pi,\u03c0": true, "i": true, "j": false}, "constants": [], "variables": {"htk": {"name": "htk", "group": "part b", "definition": "random(1..abs(xbans*kfmgj-1))", "description": "", "templateType": "anything", "can_override": false}, "primes": {"name": "primes", "group": "part b", "definition": "[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199]", "description": "", "templateType": "anything", "can_override": false}, "kfmgj": {"name": "kfmgj", "group": "part b", "definition": "random(-12..12 except [-1,0,1])", "description": "
m signifies 'minus'
", "templateType": "anything", "can_override": false}, "xans": {"name": "xans", "group": "part a", "definition": "random(-10..10)", "description": "", "templateType": "anything", "can_override": false}, "gtj": {"name": "gtj", "group": "part b", "definition": "-kfmgj+ktf", "description": "", "templateType": "anything", "can_override": false}, "gtl": {"name": "gtl", "group": "part b", "definition": "xbans*kfmgj+htk", "description": "", "templateType": "anything", "can_override": false}, "ycans": {"name": "ycans", "group": "part c", "definition": "(q*p-s*m)/(r*m-n*q)", "description": "", "templateType": "anything", "can_override": false}, "xcans": {"name": "xcans", "group": "part c", "definition": "(n*s-p*r)/(r*m-n*q)", "description": "", "templateType": "anything", "can_override": false}, "f": {"name": "f", "group": "part b", "definition": "ktf/k", "description": "", "templateType": "anything", "can_override": false}, "dmb": {"name": "dmb", "group": "part a", "definition": "xans*(a-c)", "description": "", "templateType": "anything", "can_override": false}, "xbans": {"name": "xbans", "group": "part b", "definition": "random(-21..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "a": {"name": "a", "group": "part a", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "c": {"name": "c", "group": "part a", "definition": "random(-12..12 except [a,0])", "description": "", "templateType": "anything", "can_override": false}, "b": {"name": "b", "group": "part a", "definition": "d-dmb", "description": "", "templateType": "anything", "can_override": false}, "d": {"name": "d", "group": "part a", "definition": "random(1..dmb)", "description": "", "templateType": "anything", "can_override": false}, "g": {"name": "g", "group": "part b", "definition": "gcd(gtl,gtj)", "description": "gcd(gtl,gtj)
", "templateType": "anything", "can_override": false}, "yans": {"name": "yans", "group": "part a", "definition": "a*(d-b)/(a-c)+b", "description": "", "templateType": "anything", "can_override": false}, "h": {"name": "h", "group": "part b", "definition": "htk/k", "description": "", "templateType": "anything", "can_override": false}, "k": {"name": "k", "group": "part b", "definition": "gcd(htk,ktf)", "description": "old version if(factorise(abs(ktf))[len(factorise(abs(ktf)))-1]=0,1,primes[len(factorise(abs(ktf)))-1])
", "templateType": "anything", "can_override": false}, "j": {"name": "j", "group": "part b", "definition": "gtj/g", "description": "", "templateType": "anything", "can_override": false}, "m": {"name": "m", "group": "part c", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "l": {"name": "l", "group": "part b", "definition": "gtl/g", "description": "", "templateType": "anything", "can_override": false}, "n": {"name": "n", "group": "part c", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "q": {"name": "q", "group": "part c", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "p": {"name": "p", "group": "part c", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "s": {"name": "s", "group": "part c", "definition": "random(-12..12 except 0)", "description": "", "templateType": "anything", "can_override": false}, "r": {"name": "r", "group": "part c", "definition": "random(-12..12 except [0,ceil(n*q/m),floor(n*q/m)])", "description": "", "templateType": "anything", "can_override": false}, "ybans": {"name": "ybans", "group": "part b", "definition": "(j*h-l*f)/(kfmgj)", "description": "", "templateType": "anything", "can_override": false}, "ktf": {"name": "ktf", "group": "part b", "definition": "random(1..abs(kfmgj-1))", "description": "t signifies 'times'
", "templateType": "anything", "can_override": false}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": [], "variable_groups": [{"name": "part a", "variables": ["xans", "a", "c", "dmb", "b", "d", "yans"]}, {"name": "part b", "variables": ["primes", "kfmgj", "ktf", "gtj", "xbans", "htk", "gtl", "g", "j", "l", "k", "f", "h", "ybans"]}, {"name": "part c", "variables": ["m", "n", "p", "q", "r", "s", "xcans", "ycans"]}], "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": "Find the $x$ and $y$ values that satisfy both of the following equations.
\n| $y$ | \n$=$ | \n$\\simplify{{a}x+{b}}$ | \n$(1)$ | \n
| $y$ | \n$=$ | \n$\\simplify{{c}x+{d}}$ | \n$(2)$ | \n
$x=$ [[0]], $y=$ [[1]]
\n", "stepsPenalty": "2", "steps": [{"type": "information", "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": "There are many ways to solve these equations simultaneously. Here is one method.
\n| $y$ | \n$=$ | \n$\\simplify{{a}x+{b}}$ | \n$(1)$ | \n
| $y$ | \n$=$ | \n$\\simplify{{c}x+{d}}$ | \n$(2)$ | \n
Substitute the expression for $y$ given in $(1)$ into $(2)$:
\\[\\simplify{{a}x+{b} ={c}x+{d}}\\]
Collect like terms:
\\[\\simplify{{a-c}x={d-b}}\\]
Solve for $x$:
\\[x=\\var{xans}\\]
Now we know the $x$ value we can determine the corresponding $y$ value by substituting $x=\\var{xans}$ into either equation $(1)$ or $(2)$, below we substitute into $(1)$:
| $y$ | \n$=$ | \n$\\simplify[!collectnumbers]{{a}({xans})+{b}}$ | \n
| \n | $=$ | \n$\\var{yans}$ | \n
Therefore the values that satisfy equations $(1)$ and $(2)$ are $x=\\var{xans}$ and $y=\\var{yans}$.
"}], "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": "xans", "maxValue": "xans", "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": "yans", "maxValue": "yans", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": true, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}, {"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 the following simultaneous equations.
\n| $\\simplify{{f}x+{g}y}$ | \n$=$ | \n$\\var{-h}$ | \n$(3)$ | \n
| $\\simplify{{j}x+{k}y}$ | \n$=$ | \n$\\var{-l}$ | \n$(4)$ | \n
$x=$ [[0]], $y=$ [[1]]
\n", "stepsPenalty": "2", "steps": [{"type": "information", "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": "There are many ways to solve these equations simultaneously. Here is one method.
\n| $\\simplify{{f}x+{g}y}$ | \n$=$ | \n$\\var{-h}$ | \n$(3)$ | \n
| $\\simplify{{j}x+{k}y}$ | \n$=$ | \n$\\var{-l}$ | \n$(4)$ | \n
Solve one of the equations for one of the variables. Here we solve equation $(3)$ for $y$:
\n\\begin{align}\\var{g}y&=\\simplify{{-h}-{f}x}\\\\y&=\\simplify{({-h}-{f}x)/({g})}\\quad(5)\\end{align}
\n\\begin{align}y&=\\simplify{({-h}-{f}x)/({g})}\\quad(5)\\end{align}
\nSubstitute this expression for $y$ given in $(5)$ into $(4)$:
\n\\[\\simplify[all,!collectnumbers]{{j}x+{k}(({-h}-{f}x)/({g})) = {-l}}\\]
\nCollect like terms:
\\[\\simplify[fractionnumbers]{{j-f*k/g}x={-l+h*k/g}}\\]
Solve for $x$:
\\[x=\\var{xbans}\\]
Now we know the $x$ value we can determine the corresponding $y$ value by substituting $x=\\var{xbans}$ into equation $(5)$:
\\begin{align}y&=\\simplify[unitdenominator,!collectnumbers]{({-h}-{f}({xbans}))/({g})}\\\\&=\\var{ybans}\\end{align}
\nTherefore the values that satisfy equations $(3)$ and $(4)$ are $x=\\var{xbans}$ and $y=\\var{ybans}$.
"}], "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": "xbans", "maxValue": "xbans", "correctAnswerFraction": true, "allowFractions": true, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": false, "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": "ybans", "maxValue": "ybans", "correctAnswerFraction": true, "allowFractions": true, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}, {"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 the following system of equations.
\n| $\\simplify{{m}a+{n}b+{p}}$ | \n$=$ | \n$0$ | \n$(5)$ | \n
| $\\simplify{{q}a+{r}b+{s}}$ | \n$=$ | \n$0$ | \n$(6)$ | \n
$a=$ [[0]], $b=$ [[1]]
\n", "stepsPenalty": "2", "steps": [{"type": "information", "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": "There are many ways to solve these equations simultaneously. Here is one method.
\n| $\\simplify{{m}a+{n}b+{p}}$ | \n$=$ | \n$0$ | \n$(5)$ | \n
| $\\simplify{{q}a+{r}b+{s}}$ | \n$=$ | \n$0$ | \n$(6)$ | \n
Solve one of the equations for one of the variables. Here we solve equation $(5)$ for $b$:
\n| $\\var{n}b$ | \n$=$ | \n$\\simplify{{-m}a+{-p}}$ | \n\n |
| \n | \n | \n | \n |
| $b$ | \n$=$ | \n$\\displaystyle{\\simplify{({-m}a+{-p})/({n})}}$ | \n$(7)$ | \n
Substitute this expression for $b$ given in $(7)$ into $(6)$:
\n\\[\\simplify[all,!collectnumbers]{{q}a+{r}*(({-m}a+{-p})/{n}) + {s}=0}\\]
\nCollect like terms:
\\[\\simplify[fractionnumbers]{{q-r*m/n}a={-s+r*p/n}}\\]
Solve for $a$:
\\[a=\\simplify[fractionnumbers]{{xcans}}\\]
Now we know the $a$ value we can determine the corresponding $b$ value by substituting $a=\\simplify[fractionnumbers]{{xcans}}$ into equation $(7)$:
| $b$ | \n$=$ | \n$\\displaystyle{\\simplify[unitdenominator,!collectnumbers,fractionnumbers]{({-m}*({xcans})+{-p})/({n})}}$ | \n
| \n | \n | \n |
| \n | $=$ | \n$\\simplify[fractionnumbers]{{ycans}}$ | \n
Therefore the values that satisfy equations $(5)$ and $(6)$ are $a=\\simplify[fractionnumbers]{{xcans}}$ and $b=\\simplify[fractionnumbers]{{ycans}}$.
"}], "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": "xcans", "maxValue": "xcans", "correctAnswerFraction": true, "allowFractions": true, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": false, "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": "ycans", "maxValue": "ycans", "correctAnswerFraction": true, "allowFractions": true, "mustBeReduced": false, "mustBeReducedPC": 0, "displayAnswer": "", "showFractionHint": false, "notationStyles": ["plain", "en", "si-en"], "correctAnswerStyle": "plain"}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always", "contributors": [{"name": "Ben Brawn", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/605/"}], "resources": []}]}], "contributors": [{"name": "Ben Brawn", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/605/"}]}