易语言如何取2个字符中间的数来运算呢?

易语言如何取2个字符中间的数来运算呢?,第1张

版本 2
支持库 spec

程序集 窗口程序集_启动窗口

子程序 _按钮1_被单击
局部变量 a, 文本
局部变量 b, 文本型

a = “<120+1515+(68-24)>”
b = 取文本中间 (a, 2, 取文本长度 (a) - 2)
调试输出 (b)
标准输出 (, b)
调试输出 (表达式计算 (b))


子程序 表达式计算, 双精度小数型
参数 表达式, 文本型
局部变量 加, 整数型
局部变量 减, 整数型
局部变量 乘, 整数型
局部变量 除, 整数型
局部变量 左, 整数型
局部变量 左1, 整数型
局部变量 右, 整数型

右 = 寻找文本 (表达式, “)”, , 假)
如果真 (右 ≠ -1)
    循环判断首 ()
        左 = 寻找文本 (表达式, “(”, 左 + 1, 假)
    循环判断尾 (寻找文本 (表达式, “(”, 左 + 1, 假) ≠ -1)
    返回 (表达式计算 (取文本左边 (表达式, 左 - 1) + 到文本 (表达式计算 (取文本中间 (表达式, 左 + 1, 右 - 左 - 1))) + 取文本中间 (表达式, 右 + 1, 取文本长度 (表达式) - 右)))
如果真结束
加 = 寻找文本 (表达式, “+”, , 假)
如果真 (加 ≠ -1)
    返回 (表达式计算 (取文本左边 (表达式, 加 - 1)) + 表达式计算 (取文本中间 (表达式, 加 + 1, 取文本长度 (表达式) - 加)))
如果真结束
减 = 寻找文本 (表达式, “-”, , 假)
如果真 (减 ≠ -1)
    返回 (表达式计算 (取文本左边 (表达式, 减 - 1)) - 表达式计算 (取文本中间 (表达式, 减 + 1, 取文本长度 (表达式) - 减)))
如果真结束
乘 = 寻找文本 (表达式, “”, , 假)
如果真 (乘 ≠ -1)
    返回 (表达式计算 (取文本左边 (表达式, 乘 - 1)) × 表达式计算 (取文本中间 (表达式, 乘 + 1, 取文本长度 (表达式) - 乘)))
如果真结束
除 = 寻找文本 (表达式, “/”, , 假)
如果真 (除 ≠ -1)
    返回 (表达式计算 (取文本左边 (表达式, 除 - 1)) ÷ 表达式计算 (取文本中间 (表达式, 除 + 1, 取文本长度 (表达式) - 除)))
如果真结束
返回 (到数值 (表达式))

有图有真像

中间数字是13。这个幻方如下:
18 6 15
10 13 16
11 20 8
幻和值=13×3=39
解法:
1、三阶幻方的角格×2=非相邻两个边格之和
(证明方法:第一列+主对角线=第一行+第二行,等式两边消去相同项即得)
也就是:11×2=16+第一行中间数,得第一行中间数=6
2、三阶幻方中心数×2=对称的两个数之和
第二列知道6和20,中间数=(6+20)÷2=13
3、幻和值=6+13+20=13×3=39,依次求出幻方其它数就OK了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12857875.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存