MCBE指令模拟二次函数
效果图例







前方4个命令方块,从右往左的效果分别是
在-5到5的范围内随机设置a
在-5到5的范围内随机设置b
在-5到5的范围内随机设置c
在-5到5的范围内随机设置x
然后自动开始运算y,并把解析式与函数值用t显显示出来

execute @e[scores={function=0}] ~ ~ ~ titleraw @a actionbar {"rawtext":[{"text":"当x="},{"score":{"name":"@s","objective":"x"}},{"text":"时\n("},{"score":{"name":"@s","objective":"a"}},{"text":")x²+("},{"score":{"name":"@s","objective":"b"}},{"text":")x+("},{"score":{"name":"@s","objective":"c"}},{"text":")的值为"},{"score":{"name":"@s","objective":"y"}}]}
t显显示二次函数解析式及x有值时的运算结果

/scoreboard objectives add a dummy a
/scoreboard objectives add b dummy b
/scoreboard objectives add c dummy c
/scoreboard objectives add x dummy x
/scoreboard objectives add y dummy y
/scoreboard objectives add a_save dummy a_save
/scoreboard objectives add b_save dummy b_save
/scoreboard objectives add function dummy function
前置计分板指令
二次函数的前置
三个系数abc 两个变量xy
function是为了使xxx获得特殊类型并让它变成一个小计算机计算二次函数
a bsave是为了保存a b值让a b值能够在不受外界的干扰下继续保持到下一次运算当中

计算过程
scoreboard players operation @e[scores={function=0}] y = @e[scores={function=0},c=1] c
scoreboard players operation @e[scores={function=0}] a_save = @e[scores={function=0},c=1] a
scoreboard players operation @e[scores={function=0}] b_save = @e[scores={function=0},c=1] b
scoreboard players operation @e[scores={function=0}] b *= @e[scores={function=0},c=1] x
scoreboard players operation @e[scores={function=0}] y += @e[scores={function=0},c=1] b
scoreboard players operation @e[scores={function=0}] a *= @e[scores={function=0},c=1] x
scoreboard players operation @e[scores={function=0}] a *= @e[scores={function=0},c=1] x
scoreboard players operation @e[scores={function=0}] y += @e[scores={function=0},c=1] a
scoreboard players operation @e[scores={function=0}] a = @e[scores={function=0},c=1] a_save
scoreboard players operation @e[scores={function=0}] b = @e[scores={function=0},c=1] b_save
开始使y值等于c值
把a值存到asave
把b值存到bsave
将b 乘以 x
因为b乘以x等于bx,所以此时y加的b,是一开始的b乘以了x的结果
把a乘以x
把a乘以x
把a加到y里,因为此时的a乘以了x和x,所以此时y加的a是一开始的a乘以了x与x的最终结果
把asave里的值复制还给a
把bsave里的值复制还给b
计算完毕
在save计分板复制完分值后,a和b会变成一开始的值,以带入下一次运算