2908422954 发表于 2020-4-4 20:00:26

易语言计算器子程序哪里错了?

本帖最后由 十万个为什么 于 2020-4-4 22:33 编辑

.版本 2
.支持库 spec

.子程序 _按钮1_被单击

调试输出 (计算机 (1, 5, “+”))


.子程序 计算机, 小数型
.参数 X, 小数型
.参数 Y, 小数型
.参数 计算类型, 文本型

.如果真 (计算类型 = “+”)
    返回 (X + Y)
.如果真结束
.如果真 (计算类型 = “-”)
    返回 (X - Y)
.如果真结束
.如果真 (计算类型 = “*”)
    返回 (X × Y)
.如果真结束
.如果真 (计算类型 = “/”)
    返回 (X ÷ Y)
.如果真结束


十万个为什么 发表于 2020-4-4 22:37:17

本帖最后由 十万个为什么 于 2020-4-4 22:38 编辑

你的自定义子程序。只定义了计算类型为加减乘除时的返回结果。而没有定义。如果计算类型不等于加减乘除时的返回结果。如下图所示。如果计算类型不为加减乘除呢?。你应该返回个0或别的。。如果不为加减乘除则不会进入如果真。这样就没有返回值了。
这样自定义子程序。每个分支都有返回值。

.版本 2
.支持库 spec

.子程序 _按钮1_被单击

调试输出 (计算机 (1, 5, “+”))

.子程序 计算机, 小数型, , 根据计算类型返回计算结果,如果计错类型不等于+-*/号,则返回0,
.参数 X, 小数型
.参数 Y, 小数型
.参数 计算类型, 文本型

.如果真 (计算类型 = “+”)
    返回 (X + Y)
.如果真结束
.如果真 (计算类型 = “-”)
    返回 (X - Y)
.如果真结束
.如果真 (计算类型 = “*”)
    返回 (X × Y)
.如果真结束
.如果真 (计算类型 = “/”)
    返回 (X ÷ Y)
.如果真结束
返回 (0)




yyz860723 发表于 2021-5-29 00:16:58

楼主发贴辛苦了,谢谢楼主分享!我觉得易语言吧是注册对了!
页: [1]
查看完整版本: 易语言计算器子程序哪里错了?