yzhang37 发表于 2011-7-11 11:12:07

名字不是很好听,换一个

还有没有elseif
没有Select Case 语句
没有Do While
还有数值输入功能不是很强大

GWHBOB 发表于 2011-7-11 17:53:26

不知容错能力如何,比如我打个死循环进去?

py86546539 发表于 2011-7-11 18:12:22

1 建议丰富库函数,如随机数函数,截图函数等
2 有时不是很稳定,会爆机
3 exit不能直接退回到菜单
4 同21L增强数值(包括字符串)输入功能
5 能否一键构造矩阵(还有多维数组),如a=【【【1】【2】】【【3】【4】】】

话说LZ的malical对手持党帮助极大。。希望越做越强。

noivan 发表于 2011-7-12 11:45:21

不知容错能力如何,比如我打个死循环进去?
GWHBOB 发表于 2011-7-11 17:53 http://www.cncalc.org/images/common/back.gif设置一个多按键组合强行退出键?(要不常按但按起来难度并不大的)

月与映之皮丘 发表于 2011-7-12 13:20:44

设置一个多按键组合强行退出键?(要不常按但按起来难度并不大的)
noivan 发表于 2011-7-12 11:45 http://www.cncalc.org/images/common/back.gif
要是我的话,我会选optn+exp+del

GWHBOB 发表于 2011-7-12 18:03:23

24# noivan 不如拔电池……不过既然不好提高运行效率,往人性化方面走提高编程效率(如21L字串输入)也是一个很好的选择。

diameter 发表于 2011-7-12 18:22:07

本帖最后由 diameter 于 2011-7-12 18:27 编辑

26# GWHBOB

这样吧,添加一个System函数,把能否退出的权利让给程序作者system["AC_Break"]=false #关闭了按AC键退出的检查,默认为true还有什么其他的关于解释器配置的想法吗?(比如数值强制用常量初始化等……)

noivan 发表于 2011-7-13 12:20:25

26# GWHBOB

这样吧,添加一个System函数,把能否退出的权利让给程序作者system["AC_Break"]=false #关闭了按AC键退出的检查,默认为true还有什么其他的关于解释器配置的想法吗?(比如数值强制用常量初始化等…… ...
diameter 发表于 2011-7-12 18:22 http://www.cncalc.org/images/common/back.gif希望本机可以轻松编译,如提供书写工具,前一段时间我用EDIT打开MCL文件,好像有点问题,保存后就不能运行了。。。

l5h5t7 发表于 2011-7-14 11:29:41

本帖最后由 l5h5t7 于 2011-7-14 11:37 编辑

希望增加超频函数,提高运行效率。
建议增加多程序启动,如果麻烦的话可以把后台程序挂起。

LLLYYYGGG123 发表于 2013-1-25 20:09:42

还是把Malical写的3DFP贴出来
附地址啊

chuxianbing 发表于 2013-6-27 19:57:39

自己编写的一段计算方位角,用来极坐标放样的程序
说明:在显示计算结果时按exit键返回上一级菜单
按AC键退出程序
按exp键输入度分秒
输入数据时直接回车使用默认值

chuxianbing 发表于 2013-6-27 20:52:03



选择菜单
1为坐标反算
2为坐标正算


输入坐标框

角度输入框

chuxianbing 发表于 2013-6-27 21:09:59

var func= "sin(x)+cos(y)"
var x_min=-6.3,x_max=6.3,y_min=-3.1,y_max=3.1,sp=0.5
var px1=0, py1=0, px2=0, py2=0
var bx, by, g=30, h=30
var cos_s, sin_s, cos_t, sin_t
var dx,dy
::main()
var i
var func2
while 1>0
    i = show_menu()
    if i==2
      func2 = requeststr("sin(x)+cos(y)","f(x,y)=")
      if dim(func2) then
             func=func2
          ifend
        continue
    ifend
    if i==1 then
      view()
          continue
    ifend
    if i==3 then
      exit()
    ifend
wend
::endf

::show_menu()
var index;
index=menu("3D Function Power","1:   Draw      ","2:   z(x,y)    ","3:   Exit      ")
return index
::endf

::view()
var key
# 30020 = left
# 30021 = right
while 1
    draw_3d()
    key = getkey()
    if key==30018 or key==30020 # up
      h = h + 10
          continue
    ifend

    if key==30023 or key==30021 # down
      h = h -10
          continue
    ifend
    if key==30002
      ClrIO()
      return nil
    ifend
wend
::endf

::rcl_deg()
var s,t
s = 3.1415926 * g / 180;
t = 3.1415926 * (90 - h) / 180;
sin_s = sin(s)
cos_s = cos(s)
sin_t = sin(t)
cos_t = cos(t)
::endf

::_3d_to_win(x,y,z)
var w
if g !=0
    w = x * cos_s - y * sin_s
    y = x * sin_s + y * cos_s
    x = w
ifend
if h != 90 then
    w = y * cos_t - z * sin_t;
    z = y * sin_t + z * cos_t;
    y = w;
IfEnd
px2 = px1
py2 = py1
px1 = (x - x_min)*(127/(x_max-x_min))+1
py1 = (y - y_min)*(63 /(y_max-y_min))+1
::EndF

::draw_3d()
var x,y,z
rcl_deg()
clrio()
x = x_min
while 1
    if x > x_max
           break
        ifend
    y = y_min
    z = eval(func)
    _3d_to_win(x,y,z)
    while y <= y_max
      z = eval(func)
      _3d_to_win(x,y,z)
      line(px1,py1,px2,py2)
      y = y+sp
    wend
    putdisp()
    x = x+sp
Wend
y = y_min
while y <= y_max
    x = x_min
    z = eval(func)
    _3d_to_win(x,y,z)
   while x <= x_max
      z = eval(func)
      _3d_to_win(x,y,z)
      line(px1,py1,px2,py2)
      x = x+sp
   wend
   putdisp()
   y = y+sp
wend
locate(1,1,func)
::endf
页: 1 [2]
查看完整版本: [Add-in]Malical 2.15[我要专家]