// Numbas version: finer_feedback_settings {"name": "Kolam", "extensions": ["geogebra"], "custom_part_types": [], "resources": [["question-resources/kolam-00.png", "/srv/numbas/media/question-resources/kolam-00.png"], ["question-resources/bin1.png", "/srv/numbas/media/question-resources/bin1.png"], ["question-resources/reset1.png", "/srv/numbas/media/question-resources/reset1.png"], ["question-resources/line1_5BSfqfY.png", "/srv/numbas/media/question-resources/line1_5BSfqfY.png"]], "navigation": {"allowregen": true, "showfrontpage": false, "preventleave": false, "typeendtoleave": false}, "question_groups": [{"pickingStrategy": "all-ordered", "questions": [{"name": "Kolam", "tags": [], "metadata": {"description": "
Aktivität zum Erstellen eines Kolam
", "licence": "Creative Commons Attribution 4.0 International"}, "statement": "Ein Kolam ist eine in einem einzigen Linienzug durchführbare, regelgeleitet erstellte Kreidezeichnung, wie sie sich noch heute bei den südindischen Tamilen als ethnomathematische Praxis auffinden lässt.
Eine vereinfachte Variante für 8 Arme mit 5 Punkten sieht etwa so aus:
Unten ist ein Punktmuster zur Erstellung eines solchen Kolam mit 4 Armen zu je 3 Punkten abgebildet (bitte etwas Geduld, bis das Applet lädt).
", "advice": "a) Es ergibt sich:
\n{geogebra_applet('https://www.geogebra.org/m/fwc7k2nw',defs)}
\nb) Angenommen, ein Kolam hat $a$ Arme mit je $b$ Punkten.
\ni) Für $a,b$ muss dann zwingend $\\operatorname{ggT}(a,b)=1$ gelten, damit wir einen Eulergraphen haben.
\nii) Der Graph hat dann genau $a\\cdot b$ Kanten.
\n\n", "rulesets": {}, "extensions": ["geogebra"], "variables": {"f_correct": {"name": "f_correct", "group": "Lines", "definition": "\"Strecke A\"+kolam[0]+\", B\"+kolam[1]", "description": "", "templateType": "anything"}, "app": {"name": "app", "group": "initial setup", "definition": "geogebra_applet('https://www.geogebra.org/m/xyhpupec')", "description": "", "templateType": "anything"}, "kolam": {"name": "kolam", "group": "initial setup", "definition": "shuffle(1..3)", "description": "", "templateType": "anything"}, "kolam_string": {"name": "kolam_string", "group": "initial setup", "definition": "\"<\"+kolam[0]+\", \"+kolam[1]+\", \"+kolam[2]+\">\"", "description": "", "templateType": "anything"}, "g_correct": {"name": "g_correct", "group": "Lines", "definition": "\"Strecke B\"+kolam[1]+\", C\"+kolam[2]", "description": "", "templateType": "anything"}, "h_correct": {"name": "h_correct", "group": "Lines", "definition": "\"Strecke C\"+kolam[2]+\", D\"+kolam[0]", "description": "", "templateType": "anything"}, "i_correct": {"name": "i_correct", "group": "Lines", "definition": "\"Strecke D\"+kolam[0]+\", A\"+kolam[1]", "description": "", "templateType": "anything"}, "j_correct": {"name": "j_correct", "group": "Lines", "definition": "\"Strecke A\"+kolam[1]+\", B\"+kolam[2]", "description": "", "templateType": "anything"}, "k_correct": {"name": "k_correct", "group": "Lines", "definition": "\"Strecke B\"+kolam[2]+\", C\"+kolam[0]", "description": "", "templateType": "anything"}, "l_correct": {"name": "l_correct", "group": "Lines", "definition": "\"Strecke C\"+kolam[0]+\", D\"+kolam[1]", "description": "", "templateType": "anything"}, "m_correct": {"name": "m_correct", "group": "Lines", "definition": "\"Strecke D\"+kolam[1]+\", A\"+kolam[2]", "description": "", "templateType": "anything"}, "n_correct": {"name": "n_correct", "group": "Lines", "definition": "\"Strecke A\"+kolam[2]+\", B\"+kolam[0]", "description": "", "templateType": "anything"}, "p_correct": {"name": "p_correct", "group": "Lines", "definition": "\"Strecke B\"+kolam[0]+\", C\"+kolam[1]", "description": "", "templateType": "anything"}, "q_correct": {"name": "q_correct", "group": "Lines", "definition": "\"Strecke C\"+kolam[1]+\", D\"+kolam[2]", "description": "", "templateType": "anything"}, "r_correct": {"name": "r_correct", "group": "Lines", "definition": "\"Strecke D\"+kolam[2]+\", A\"+kolam[0]", "description": "", "templateType": "anything"}, "defs": {"name": "defs", "group": "Create_Segments", "definition": "[\"f\": \"Segment(A\"+kolam[0]+\",B\"+kolam[1]+\")\",\"g\": \"Segment(B\"+kolam[1]+\",C\"+kolam[2]+\")\",\"h\": \"Segment(C\"+kolam[2]+\",D\"+kolam[0]+\")\", \n \"i\": \"Segment(D\"+kolam[0]+\",A\"+kolam[1]+\")\",\"j\": \"Segment(A\"+kolam[1]+\",B\"+kolam[2]+\")\", \"k\": \"Segment(B\"+kolam[2]+\",C\"+kolam[0]+\")\",\n \"l\": \"Segment(C\"+kolam[0]+\",D\"+kolam[1]+\")\",\"m\": \"Segment(D\"+kolam[1]+\",A\"+kolam[2]+\")\", \"n\": \"Segment(A\"+kolam[2]+\",B\"+kolam[0]+\")\",\n \"p\": \"Segment(B\"+kolam[0]+\",C\"+kolam[1]+\")\",\"q\": \"Segment(C\"+kolam[1]+\",D\"+kolam[2]+\")\", \"r\": \"Segment(D\"+kolam[2]+\",A\"+kolam[0]+\")\"\n]", "description": "", "templateType": "anything"}}, "variablesTest": {"condition": "", "maxRuns": 100}, "ungrouped_variables": [], "variable_groups": [{"name": "Lines", "variables": ["f_correct", "g_correct", "h_correct", "i_correct", "j_correct", "k_correct", "l_correct", "m_correct", "n_correct", "p_correct", "q_correct", "r_correct"]}, {"name": "initial setup", "variables": ["app", "kolam_string", "kolam"]}, {"name": "Create_Segments", "variables": ["defs"]}], "functions": {}, "preamble": {"js": "", "css": ""}, "parts": [{"type": "extension", "useCustomName": false, "customName": "", "marks": 1, "scripts": {"constructor": {"script": "this.marks=3", "order": "after"}}, "customMarkingAlgorithm": "f:\n if(exists(app,\"f\")=true,definition_string(app,\"f\"),definition_string(app,'A1'))\n\nmark:\n if(exists(app,\"f\")=true,if(definition_string(app,\"f\")=f_correct,add_credit(1/12,\"1. Linie ok. \"),negative_feedback(\"1. Linie falsch\")),negative_feedback(\"1. Linie fehlt\"));\n if(exists(app,\"g\")=true,if(definition_string(app,\"g\")=g_correct,add_credit(1/12,\"2. Linie ok. \"),negative_feedback(\"2. Linie falsch\")),negative_feedback(\"2. Linie fehlt\"));\n if(exists(app,\"h\")=true,if(definition_string(app,\"h\")=h_correct,add_credit(1/12,\"3. Linie ok. \"),negative_feedback(\"3. Linie falsch\")),negative_feedback(\"3. Linie fehlt\"));\n if(exists(app,\"i\")=true,if(definition_string(app,\"i\")=i_correct,add_credit(1/12,\"4. Linie ok. \"),negative_feedback(\"4. Linie falsch\")),negative_feedback(\"4. Linie fehlt\"));\n if(exists(app,\"j\")=true,if(definition_string(app,\"j\")=j_correct,add_credit(1/12,\"5. Linie ok. \"),negative_feedback(\"5. Linie falsch\")),negative_feedback(\"5. Linie fehlt\"));\n if(exists(app,\"k\")=true,if(definition_string(app,\"k\")=k_correct,add_credit(1/12,\"6. Linie ok. \"),negative_feedback(\"6. Linie falsch\")),negative_feedback(\"6. Linie fehlt\"));\n if(exists(app,\"l\")=true,if(definition_string(app,\"l\")=l_correct,add_credit(1/12,\"7. Linie ok. \"),negative_feedback(\"7. Linie falsch\")),negative_feedback(\"7. Linie fehlt\"));\n if(exists(app,\"m\")=true,if(definition_string(app,\"m\")=m_correct,add_credit(1/12,\"8. Linie ok. \"),negative_feedback(\"8. Linie falsch\")),negative_feedback(\"8. Linie fehlt\"));\n if(exists(app,\"n\")=true,if(definition_string(app,\"n\")=n_correct,add_credit(1/12,\"9. Linie ok. \"),negative_feedback(\"9. Linie falsch\")),negative_feedback(\"9. Linie fehlt\"));\n if(exists(app,\"p\")=true,if(definition_string(app,\"p\")=p_correct,add_credit(1/12,\"10. Linie ok. \"),negative_feedback(\"10. Linie falsch\")),negative_feedback(\"10. Linie fehlt\"));\n if(exists(app,\"q\")=true,if(definition_string(app,\"q\")=q_correct,add_credit(1/12,\"11. Linie ok. \"),negative_feedback(\"11. Linie falsch\")),negative_feedback(\"11. Linie fehlt\"));\n if(exists(app,\"r\")=true,if(definition_string(app,\"r\")=r_correct,add_credit(1/12,\"12. Linie ok. \"),negative_feedback(\"12. Linie falsch\")),negative_feedback(\"12. Linie fehlt\"))\n \ninterpreted_answer:\n f", "extendBaseMarkingAlgorithm": false, "unitTests": [], "showCorrectAnswer": true, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "prompt": "
{app}
\nErstellen Sie ein Kolam gemäß der Punktfolge {kolam_string}. Beginnen Sie dabei mit dem Zählen der Punkte beim innersten Punkt des nach oben zeigenden Arms (der gemeinsame Punkt aller vier Arme in der Mitte sei 0) und schreiten Sie im Uhrzeigersinn (rechts herum) fort.
\nSie können das Icon zum Zeichnen von Linien verwenden, das Icon um fehlerhafte Linien wieder zu löschen. Mit können Sie die ganze Zeichnung wieder zurücksetzen, mit den beiden Pfeilen oben rechts einen Schritt rückgängig machen bzw. wiederholen.
"}, {"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": "Angenommen, ein Kolam hat $a$ Arme mit je $b$ Punkten.
\ni) Für $a,b$ muss dann zwingend $\\operatorname{ggT}(a,b)=$[[0]] gelten, damit wir einen Eulergraphen haben.
\nii) Der Graph hat dann genau [[1]] Kanten.
\n", "gaps": [{"type": "numberentry", "useCustomName": true, "customName": "ggT", "marks": "1", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": false, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "minValue": "1", "maxValue": "1", "correctAnswerFraction": false, "allowFractions": false, "mustBeReduced": false, "mustBeReducedPC": 0, "showFractionHint": true, "notationStyles": ["eu", "plain-eu"], "correctAnswerStyle": "eu"}, {"type": "jme", "useCustomName": true, "customName": "Kanten", "marks": "2", "scripts": {}, "customMarkingAlgorithm": "", "extendBaseMarkingAlgorithm": true, "unitTests": [], "showCorrectAnswer": false, "showFeedbackIcon": true, "variableReplacements": [], "variableReplacementStrategy": "originalfirst", "nextParts": [], "suggestGoingBack": false, "adaptiveMarkingPenalty": 0, "exploreObjective": null, "answer": "a*b", "showPreview": true, "checkingType": "absdiff", "checkingAccuracy": 0.001, "failureRate": 1, "vsetRangePoints": 5, "vsetRange": [0, 1], "checkVariableNames": false, "singleLetterVariables": true, "allowUnknownFunctions": true, "implicitFunctionComposition": false, "valuegenerators": [{"name": "a", "value": ""}, {"name": "b", "value": ""}]}], "sortAnswers": false}], "partsMode": "all", "maxMarks": 0, "objectives": [], "penalties": [], "objectiveVisibility": "always", "penaltyVisibility": "always", "type": "question", "contributors": [{"name": "Andreas Vohns", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3622/"}]}]}], "contributors": [{"name": "Andreas Vohns", "profile_url": "https://numbas.mathcentre.ac.uk/accounts/profile/3622/"}]}