"AlgebraicForm" (比較法)
"AlgebraicForm" (比較法)
答の数値部分のみが計算できる代数演習に適した方法で数式を比較する.
詳細
- 代数形式比較法では,2つの数式が代数演算によって差がない場合,それらは同等であるとみなされる.例:x+2x3x
- 変数の表現が解答集の変数の表現と同一である場合,その答は正解とみなされる.
- 項の順序や単純な算術演算あるいは係数の分布等の数値計算のみが異なる答は同等であるとみなされる.
- 解答集と解答の値はどちらも,与えられた値を正確に保持するためにホールドされた式Hold[expr]として指定できる.値がホールドされている場合でも,評価中は数値部分の評価はホールドされた値の範囲内で行われる.解答は常にホールドすることが推奨される.
- デフォルトで,多項式における数値係数の任意の表現は同等であるとみなされる."DistributedCoeffients"設定を使ってこの挙動を制御する.
- AssessmentFunction[key,<|"ComparisonMethod""AlgebraicForm","DistributedCoefficients"dist|>]
- 以下は,dist のサポートされる値である.
-
All (default) 数値係数の任意の分布を許可する None 係数が厳密に key と一致することを要求する patt パターン patt と一致する係数の任意の分布を許可する - 次の表は,一般的な解答集と提出された解答のいくつかについて,"AlgebraicForm"と他の比較方法との比較を示している.
例題
すべて開く すべて閉じる例 (1)
変数の加算についての問題のAssessmentFunctionを作成する:
af = AssessmentFunction[Hold[13x], "AlgebraicForm"]これを使って答を評価する.解答集との唯一の違いが数値計算であるために正解とマークされる:
af[Hold[(10 + 3)x]]af[Hold[10x + 3x]]スコープ (2)
af = AssessmentFunction[Hold[(x + 1)(x - 1)], "AlgebraicForm"]af[Hold[x ^ 2 - 1]]af[Hold[(1 + x)(-1 + x)]]平方根の問題についてのQuestionObjectを作成する:
QuestionObject[
QuestionInterface["ShortAnswer", <|"Prompt" -> StringForm["Expand: ``", HoldForm[(x + 3)(x + 2)]], FieldHint -> "FOIL"|>],
AssessmentFunction[Hold[6 + 5 x + x^2], "AlgebraicForm"]
]一般化と拡張 (1)
デフォルトで,平方根を含む数値係数の同等の分布は正しいとされる:
AssessmentFunction[2Sqrt[10]x + Sqrt[5]a, <|"ComparisonMethod" -> "AlgebraicForm"|>][Hold[2 * Sqrt[5](Sqrt[2]x + a / 2)]]"DistributedCoefficients"を使ってすべての分布を不許可にする:
AssessmentFunction[2Sqrt[10]x + Sqrt[5]a, <|"ComparisonMethod" -> "AlgebraicForm", "DistributedCoefficients" -> None|>][Hold[2 * Sqrt[5](Sqrt[2]x + a / 2)]]nosqrt = AssessmentFunction[2Sqrt[10]x + Sqrt[5]a, <|"ComparisonMethod" -> "AlgebraicForm", "DistributedCoefficients" -> Except@Sqrt[_]|>]Sqrt[5] の因数分解は誤りであるとマークされる:
nosqrt[Hold[2 * Sqrt[5](Sqrt[2]x + a / 2)]]nosqrt[Hold[2 * (Sqrt[10]x + Sqrt[5]a / 2)]]関連するガイド
-
▪
- 質問と評価