// Numbas version: exam_results_page_options {"name": "Francis's copy of Expand brackets and collect like terms - two questions", "extensions": ["stats"], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"statement": "

For each expression below, collect like terms and expand brackets.

\n

The * symbol is required between algebraic symbols, e.g. $5ab^2$ should be written 5*a*b^2.

When simplifying expressions, only terms of the same type or like terms can be added together.

\n

Algebraic symbols or letters can be added together provided that they are raised to the same power. For example, we can add $x^2+x^2=2x^2$, but we cannot collect both $x^2$ and $x$ into one term.

\n

#### a)

\n

\\\begin{align} \\var{c[0]}x+\\var{c[1]}x+\\var{c[2]}x&=(\\var{c[0]}+\\var{c[1]}+\\var{c[2]})x\\\\ &=\\simplify{({c[0]}+{c[1]}+{c[2]})}x \\end{align} \

\n

#### b)

\n

\\\begin{align} \\var{a[1]}x^2+\\var{a[2]}x^2+\\var{a[3]}x+\\var{a[4]}x +\\var{a[0]}&=(\\var{a[1]}+\\var{a[2]})x^2+(\\var{a[3]}+\\var{a[4]})x +\\var{a[0]}\\\\ &=\\simplify{({a[1]}+{a[2]})}x^2+\\simplify{({a[3]}+{a[4]})}x+\\var{a[0]} \\end{align} \

\n

#### c)

\n

\\\begin{align} \\var{b[0]}y^5+\\var{b[1]}y^5+\\var{b[2]}y^5+\\var{b[4]}y^5+\\var{b[3]}y^5&=(\\var{b[0]}+\\var{b[1]}+\\var{b[2]}+\\var{b[4]}+\\var{b[3]})y^5\\\\ &=\\simplify{({b[1]}+{b[2]}+{b[3]}+{b[4]}+{b[0]})}y^5 \\end{align} \

\n

#### d)

\n

\\\begin{align} \\var{d[0]}ab+\\var{d[1]}abc+\\var{d[2]}a+\\var{d[3]}b+\\var{d[4]}c+\\var{d[5]}abc &=(\\var{d[1]}+\\var{d[5]})abc+\\var{d[0]}ab+\\var{d[2]}a+\\var{d[3]}b+\\var{d[4]}c\\\\ &=\\simplify{{d[1]}+{d[5]}}abc+\\var{d[0]}ab+\\var{d[2]}a+\\var{d[3]}b+\\var{d[4]}c \\end{align} \

\n

#### e)

\n

\\\begin{align} \\var{f[0]}a^2b+\\var{f[1]}ab^2+\\var{f[2]}ab+\\var{f[3]}a^2b+\\var{f[4]}ab^2 &=(\\var{f[0]}+\\var{f[3]})a^2b+(\\var{f[1]}+\\var{f[4]})ab^2+\\var{f[2]}ab\\\\ &=\\simplify{{f[0]}+{f[3]}}a^2b+\\simplify{{f[1]}+{f[4]}}ab^2+\\var{f[2]}ab \\end{align} \

\n

#### f)

\n

\\\begin{align} \\var{g[0]}(\\var{g[1]}x+\\var{g[2]}y)+\\var{g[4]}x+\\var{g[5]}y &=(\\var{g[0]}\\times \\var{g[1]}+\\var{g[4]})x+(\\var{g[0]} \\times\\var{g[2]}+\\var{g[5]})y\\\\ &=(\\simplify{{g[0]}*{g[1]}}+\\var{g[4]})x+(\\simplify{{g[0]}*{g[2]}}+\\var{g[5]})y\\\\ &=\\simplify{{g[0]}*{g[1]}+{g[4]}}x+\\simplify{{g[0]}*{g[2]}+{g[5]}}y \\end{align} \

\n

#### g)

\n

\\\begin{align} \\var{h[0]}x(\\var{h[1]}x+\\var{h[2]}z)+\\var{h[3]}x+\\var{h[6]}z+\\var{h[4]}x^2+\\var{h[5]}z^2 &=(\\simplify[]{{h[0]}{h[1]}}+\\var{h[4]})x^2+(\\simplify[]{{h[0]}{h[2]}})zx+\\var{h[3]}x+\\var{h[5]}z^2+\\var{h[6]}z\\\\ &=(\\simplify{{h[0]}{h[1]}}+\\var{h[4]})x^2+(\\simplify[]{{h[0]}{h[2]}})zx+\\var{h[3]}x+\\var{h[5]}z^2+\\var{h[6]}z\\\\ &=\\simplify{{h[0]}*{h[1]}+{h[4]}}x^2+\\simplify{{h[0]}*{h[2]}}zx+\\simplify{{h[3]}x+{h[5]}}z^2+\\var{h[6]}z \\end{align} \

\n

#### h)

\n

\\\begin{align} \\var{j[0]}(\\var{j[1]}x-\\var{j[2]}y)+\\var{j[3]}(\\var{j[4]}x-\\var{j[5]}y)+\\var{j[6]}(\\var{j[7]}x-\\var{j[8]}y) &= (\\simplify[]{{j[0]}{j[1]}}+\\simplify[]{{j[3]}{j[4]}}+\\simplify[]{{j[6]}{j[7]}})x-(\\simplify[]{{j[0]}{j[2]}}+\\simplify[]{{j[3]}{j[5]}}+\\simplify[]{{j[6]}{j[8]}})y\\\\ &= (\\simplify{{j[0]}{j[1]}}+\\simplify{{j[3]}{j[4]}}+\\simplify{{j[6]}{j[7]}})x-(\\simplify{{j[0]}{j[2]}}+\\simplify{{j[3]}{j[5]}}+\\simplify{{j[6]}{j[8]}})y\\\\ &= \\simplify{({j[0]}*{j[1]}+{j[4]*j[3]}+{j[6]}*{j[7]})x}-\\simplify{({j[0]}*{j[2]}+{j[5]}{j[3]}+{j[6]}*{j[8]})y} \\end{align} \

\n", "parts": [{"showFeedbackIcon": true, "variableReplacements": [], "prompt": "

$\\var{h[0]}x(\\var{h[1]}x+\\var{h[2]}z)+\\var{h[3]}x+\\var{h[6]}z+\\var{h[4]}x^2+\\var{h[5]}z^2=$ [[0]]

", "scripts": {}, "gaps": [{"variableReplacements": [], "musthave": {"strings": ["*"], "message": "", "showStrings": false, "partialCredit": 0}, "checkingAccuracy": 0.001, "scripts": {"mark": {"order": "after", "script": "if(this.credit==0) {\n return;\n}\n// Parse the student's answer as a syntax tree\nvar studentTree = Numbas.jme.compile(this.studentAnswer,Numbas.jme.builtinScope);\n\n// Create the pattern to match against \n// we just want two sets of brackets, each containing two terms\n// or one of the brackets might not have a constant term\n// or for repeated roots, you might write (x+a)^2\nvar rule = Numbas.jme.compile('m_any(m_number*x*z+m_number*x^2+m_number*x+m_number*z+m_number*z^2)');\n\n// Check the student's answer matches the pattern. \nvar m = Numbas.jme.display.matchTree(rule,studentTree,true);\n// If not, take away marks\nif(!m) {\n //this.setCredit(0,'You haven\\'t simplified: your answer is not in the simplified form ');\n this.setCredit(0);\n this.markingComment('You haven\\'t simplified: you still have two or more like terms that should be collected together.');\n this.giveWarning('You haven\\'t simplified: you still have two or more like terms that should be collected together.');\n}"}}, "vsetRangePoints": 5, "notallowed": {"strings": ["(", ")"], "message": "

", "showStrings": true, "partialCredit": 0}, "answer": "({h[0]}{h[1]}+{h[4]})x^2+({h[0]}{h[2]})z*x+{h[3]}x+{h[5]}z^2+{h[6]}z", "expectedVariableNames": ["x", "z"], "vsetRange": [0, 1], "maxlength": {"message": "

", "partialCredit": 0, "length": "0"}, "extendBaseMarkingAlgorithm": true, "checkVariableNames": true, "checkingType": "absdiff", "failureRate": 1, "showPreview": true, "answerSimplification": "all", "customMarkingAlgorithm": "", "showFeedbackIcon": false, "unitTests": [], "showCorrectAnswer": true, "type": "jme", "marks": 1, "variableReplacementStrategy": "originalfirst"}], "customMarkingAlgorithm": "", "unitTests": [], "sortAnswers": false, "showCorrectAnswer": true, "type": "gapfill", "marks": 0, "variableReplacementStrategy": "originalfirst", "extendBaseMarkingAlgorithm": true}, {"showFeedbackIcon": true, "variableReplacements": [], "prompt": "

$\\var{j[0]}(\\var{j[1]}x-\\var{j[2]}y)+\\var{j[3]}(\\var{j[4]}x-\\var{j[5]}y)+\\var{j[6]}(\\var{j[7]}x-\\var{j[8]}y)=$ [[0]]

", "scripts": {}, "gaps": [{"variableReplacements": [], "vsetRangePoints": 5, "checkingAccuracy": 0.001, "scripts": {"mark": {"order": "after", "script": "if(this.credit==0) {\n return;\n}\ndebugger;\n// Parse the student's answer as a syntax tree\nvar studentTree = Numbas.jme.compile(this.studentAnswer,Numbas.jme.builtinScope);\n\n// Create the pattern to match against \n// we just want two sets of brackets, each containing two terms\n// or one of the brackets might not have a constant term\n// or for repeated roots, you might write (x+a)^2\nvar rule = Numbas.jme.compile('m_any(m_number*x+m_pm(m_number*y))');\n\n// Check the student's answer matches the pattern. \nvar m = Numbas.jme.display.matchTree(rule,studentTree,true);\n// If not, take away marks\nif(!m) {\n //this.setCredit(0,'You haven\\'t simplified: your answer is not in the simplified form ');\n this.setCredit(0);\n this.markingComment('You haven\\'t simplified: you still have two or more like terms that should be collected together.');\n this.giveWarning('You haven\\'t simplified: you still have two or more like terms that should be collected together.');\n}"}}, "notallowed": {"strings": ["(", ")"], "message": "

", "showStrings": true, "partialCredit": 0}, "answer": "({j[0]}{j[1]}+{j[4]}{j[3]}+{j[6]}{j[7]})x-({j[0]}{j[2]}+{j[5]}{j[3]}+{j[6]}{j[8]})y", "expectedVariableNames": ["x", "y"], "vsetRange": [0, 1], "maxlength": {"message": "