// Numbas version: exam_results_page_options {"name": "Show all the factors of a number", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false}, "question_groups": [{"questions": [{"variables": {"factors": {"group": "Ungrouped variables", "definition": "filter(x|n, x, 1..n)", "description": "", "templateType": "anything", "name": "factors"}, "n": {"group": "Ungrouped variables", "definition": "random(10000..20000)", "description": "", "templateType": "anything", "name": "n"}}, "variable_groups": [], "advice": "", "variablesTest": {"condition": "", "maxRuns": 100}, "metadata": {"licence": "Creative Commons Attribution 4.0 International", "description": "

Show a list of the factors of a number.

\n

Works by testing each number up to \$n\$ for divisibility by \$n\$, so won't do well with really big numbers. Certainly fast enough for numbers up to 4 or 5 digits.

"}, "tags": [], "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}], "statement": "

The factors of \$\\var{n}\$ are \$\\var{latex(join(factors,', '))}\$.

\n

Or, if you want to be fancy: the factors of \$\\var{n}\$ are {join_and(map('\\\$'+x+'\\\$',x,factors))}.

", "type": "question", "preamble": {"css": "", "js": ""}, "parts": [], "name": "Show all the factors of a number", "functions": {"join_and": {"type": "string", "language": "jme", "definition": "if(len(list)=1, join(list,''), join(list[0..len(list)-1],', ')+' and '+list[-1])", "parameters": [["list", "list"]]}}, "ungrouped_variables": ["n", "factors"], "rulesets": {}, "extensions": []}], "pickingStrategy": "all-ordered"}], "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}]}