在线测验的逻辑(你是什么类型的人)

时间:2014-10-13 08:19:14

标签: logic

我创建了一个有12个问题的在线测验。每个问题都有4个选项可供选择作为答案。

在测验结束时,我们的想法是将它们发送给4个感谢页面中的一个,这些页面的声明如“你主要回答''你是这种类型的人'”

然而,我很难想出逻辑。我正在使用的软件(TypeForm.com)提供了两种逻辑选项。

Logic Jumps = If / Else语句带有可选(和无限制)AND / OR语句。 计算器=允许您为每个答案分配分数。

如何使用这些选项指定正确的最终屏幕?目前我有这个设置:

指定所有答案a)得分为1

指定所有答案b)得分为2

指定所有答案c)得分为3

指定所有答案d)得分为4

在最后的答案中,有一个具有逻辑的逻辑跳转:

“如果'得分'等于'12',则跳转到'自定义结束A'”

然而,除非测验者每次都回答a),否则这不起作用,这是非常不可能的。

我们可以使用以下其他选项:

'低于或等于'

'高于或等于'

因此,我们可以创建一个答案可能介于其间的范围。

另一种选择是选择逻辑: 如果Q1的答案等于a)AND如果Q2的答案等于A等......直到你添加了所有不同的变化 但我认为不同的变化量对于设置来说太过分了吗?

有人帮我这个吗?附:如果这不是主题我道歉它已经从MathStack中删除了,他们建议我在这里试试。

P.S。该软件不允许您使用变量来保持计数,这是由数学论坛上的某人建议的。

1 个答案:

答案 0 :(得分:0)

这个解决方案是一个可怕的黑客,但它应该适用于12个问题。将以下数字分配给您的答案:

score A = 1
score B = 100
score C = 10000
score D = 1000000

现在,考虑到总得分,您可以耐心地检查所有可能性(订单事项)

if (score >= 03000000 and score <= 99999999) then D
if (score >= 02030000 and score <= 02999999) then C
if (score >= 01030000 and score <= 01999999) then C
if (score >= 00030000 and score <= 00999999) then C
if (score >= 02020300 and score <= 02029999) then B
if (score >= 02010300 and score <= 02019999) then B
if (score >= 02000300 and score <= 02009999) then B
if (score >= 01020300 and score <= 01029999) then B
if (score >= 01010300 and score <= 01019999) then B
if (score >= 01000300 and score <= 01009999) then B
if (score >= 00020300 and score <= 00029999) then B
if (score >= 00010300 and score <= 00019999) then B
if (score >= 00000300 and score <= 00009999) then B
otherwise A

这真的很难看,但考虑到你的局限性,很难找到一个优雅的解决方案。