계산형 문항

계산형 문항은 임의문자를 사용한 계산문제를 제공함으로서 학생들이 퀴즈를 풀 때는 개별적인 수값이 대치되어 나타나게 한다.
다음은 예제 문제를 편집하는 과정을 간단히 나타낸 것이다.

질문:
보일 그림:
정답 함수:   
허용오차: ±
허용오차 유형:
유효 숫자:

문항에는 입력한 문장과 "정답 함수" {a} 와 {b} 가 보인다. 이 외에도 {name} 형태로 임의 문자가 쓰일 수 있으며 이것들은 퀴즈가 제시될 때 다른 값들로 대치되어 나타난다. 또한 정답도 퀴즈가 제시될 때 "정답 함수"에 의해 계산된다. 쓰일 수 있는 임의 문자들은 "임의 문자 편집"난의 계산형 문항을 참조하면 된다.

위 예제에서는 + 기호를 썼다. 다른 쓸 수 있는 기호에는 -*/ 그리고 % 가 있는데 % 기호는 나눗셈의 나머지를 계산하는 수학적 함수이다. 기타 사용할 수 있는 것들은 PHP에서 제공하는 수학 함수들이 있다. 이들 중에는 하나의 매개 변수를 갖는 24가지의 함수 가 있는데 이들은
abs, acos, acosh, asin, asinh, atan, atanh, ceil, cos, cosh, deg2rad, exp, expm1, floor, log, log10, log1p, rad2deg, round, sin, sinh, sprt, tan, tanh
이며, 두개의 매개 변수를 갖는 것은
atan2, pow
이 있으며 함수 minmax 는 두개 이상의 매개 변수를 가질 수 있다. 또한 함수 pi 를 사용할 수 있는데 이 때에 제대로 된 결과를 얻기 위해서는 pi() 처럼 괄호를 사용하는 것을 잊으면 안된다. 비슷하게 다른 함수들도 괄호안에 매개변수를 넣어 주어야만 한다. 가능한 사용 방법은 예를 들어 sin({a}) + cos({b}) * 2 이다. 또 cos(deg2rad({a} + 90)) 처럼 함수 안에 또 다른 함수들을 괄호로 묶어 표현하는 것도 문제될 것이 없다.
좀 더 자세하게 PHP에서 제공하는 함수 사용법을 알고 싶으면 documentation at the PHP web site을 참조하기 바란다.

계산형 문제에 있어 모든 답안에 대해 정답으로 인정되는 가능한 범위를 정할 수 있다. "허용 오차" 항목이 이를 위해 존재한다. 하지만 여기에도 세 종류의 다른 유형이 존재한다. Relative, Nominal 그리고 Geometric이 바로 그것이다. 만일 계산된 퀴즈의 정답이 200이고 허용오차가 0.5라고 가정했을 때 각각의 허용오차의 유형에 따라 다음과 같은 결과를 갖게된다.

Relative: 허용오차의 범위는 정답에 0.5를 직접 곱한 범위로서 위의 경우 100을 얻게 되고 따라서 정답으로 인정되는 범위는 100 에서 300 (200 ± 100) 이다.
이는 정답의 크기가 임의로 대치되는 숫자에 따라 크게 달라질 때 유용하게 적용할 수 있는 유형이다.

Nominal: 이것은 단순하기는 하지만 그리 강력한 것은 되지 못한다. 위의 경우 그냥 199.5 에서 200.5 (200 ± 0.5) 가 정답의 범위가 된다.
이는 개개의 정답 범위가 작을 때 유용하게 적용할 수 있는 허용오차 유형이다.

Geometric: 허용오차의 상한은 200 + 0.5*200로 계산되며 이는 Relative 유형과 다름이 없다. 하지만 하한은 200/(1 + 0.5)로 계산된다. 따라서 정답의 범위는 133.33 에서 300이 된다.
이 유형은 상한이 일반적인 허용오차 1보다는 매우 큰 허용오차를 갖지만, 하한의 경우는 명백히 모든 경우에 0을 정답으로 인정할 수 없는 매우 복잡한 계산문제의 경우에 유용하게 활용할 수 있다.

유효 숫자 항목은 단지 정답이 검토 단계나 보고서에서 어떻게 나타나느냐와만 관련이 있다. 예를 들어 3을 설정하면 정답 13.333이 13.3으로 표현된다. 또 1236의 경우에는 1240 으로 표시되며 23의 경우에는 23.0 으로 표현되는 식이다.

반응 항목과 기타 단위 항목은 수치형 문항과 동일하게 이용된다.

도움말 파일 색인