Lua中查找数字因数和多项式分解

我正尝试用Lua语法(我有一些经验)查找数字的因数并可能分解输入的多项式。我不确定是否每个人都做过因式分解,但我学习了一种“相乘得到”和“相加得到” / “x框”方法。在Lua中实际绘制该方法将是有趣的(参见附图)[![基本上只需要绘制a)](https://i.stack.imgur.com/Y2p0U.jpg)](https://i.stack.imgur.com/Y2p0U.jpg),并显示答案。如果不能绘制,则我将使用print命令。

我希望程序有两个参数:一个是确定其质因数的数字,另一个是要分解的多项式输入(像a,b和c值ax ^ 2 + bx + c)。然后我可能还会尝试完美的平方和平方的差。

我希望得到一些指导,并且我绝不期望一个完整可用的程序。提前致谢。

点赞
用户7480063
用户7480063

你可以像这样制作一个 for 循环函数块:

function factor(val)
val=math.floor(val)
found={}
rev={os.time()*4}
halt=0
lastI=0
lastM=0
for m=1,val do
    if halt==1 then
        break
    end
    if lastI == m then
        halt=1
        break
    else
    for i=0,val do
        if m*i == val then
            print(m.."*"..i.."="..val)
            table.insert(found,m.."*"..i)
            table.insert(rev,i.."*"..m)
            lastI=m
            else
        end
    end
end
end
return found
end

它将返回所有可能的因子,但缺点是最终会向后运行,但这不是问题。

用法示例:factor(6) 返回:{1*6,2*3,3*2,6*1}

2017-04-20 00:08:11