// Numbas version: exam_results_page_options {"name": "Show the prime factorisation of a number", "extensions": [], "custom_part_types": [], "resources": [], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"variables": {"primes": {"description": "", "group": "Ungrouped variables", "definition": "[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47]", "templateType": "anything", "name": "primes"}, "f": {"description": "

show_factors is defined in the Extensions & Scripts tab

", "group": "Ungrouped variables", "definition": "show_factors(a)", "templateType": "anything", "name": "f"}, "a": {"description": "", "group": "Ungrouped variables", "definition": "random(1..50)", "templateType": "anything", "name": "a"}}, "extensions": [], "functions": {"show_factors": {"definition": "latex( // mark the output as a string of raw LaTeX\n join(\n map(\n if(a=1,p,p+'^{'+a+'}'), // when the exponent is 1, return p, otherwise return p^{exponent}\n [p,a],\n filter(x[1]>0,x,zip(primes,factorise(n))) // for all the primes p which are factors of n, return p and its exponent\n ),\n ' \\\\times ' // join all the prime powers up with \\times symbols\n )\n)", "language": "jme", "parameters": [["n", "number"]], "type": "string"}}, "advice": "", "tags": [], "type": "question", "ungrouped_variables": ["primes", "a", "f"], "metadata": {"licence": "Creative Commons Attribution 4.0 International", "description": "

A function which renders the factorisation of a number in LaTeX.

"}, "variablesTest": {"condition": "", "maxRuns": 100}, "statement": "

$\\var{a} = \\var{show_factors(a)}$

", "parts": [], "rulesets": {}, "preamble": {"js": "", "css": ""}, "name": "Show the prime factorisation of a number", "variable_groups": [], "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}]}]}], "contributors": [{"name": "Christian Lawson-Perfect", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/7/"}]}