• [VB]化学分析结果处理器

    Carneades Sun, 08 Mar 2009 18:45:50 +0000

    [i=s] 本帖最后由 Carneades 于 2009-3-8 18:47 编辑
    此处理器是为了快速处理滴定分析结果数据而设计的,它可以方便地给出数据的平均数、绝对平均偏差、相对平均偏差、绝对标准偏差、相对标准偏差,一次最多可以处理5个数据。
    今天把它发布,不仅是为了方便大家处理数据;更是为了征求大家的修改意见。
    由于制作者水平限制,疏漏在所难免,欢迎指点!
    制作者认为该软件主要存在3个问题:
    1、如何自动识别数据数目?
    2、数据数目如果忘记输入,程序会出错,需要一个提醒对话框。
    3、如何完成有效数字的自动修约(四舍六入五留双)?

  • # 1

    Lucifer Sun, 08 Mar 2009 19:03:32 +0000

    1:有一个错别字(“算术平均数”,不是“算数”)
    2:我建议使用List控件,这样就可以不需要输入“数据个数”这个多余的项目了。一般说来用户都是比较懒的。
    如果偏要用现在这个方法,可以设置Text1~TextN为控件数组(数组就是同名但Index属性不同的若干同样控件),然后用For-Next统计输入数据的个数。
    3:提醒对话框可以类似这样加:
    If n=0 then
    msgbox \"请输入数据。\",vbcritical,\"错误\"
    exit sub '用来退出处理进程,依情况而加
    end if
    4:自动修约,我只会自己编写函数处理。

  • # 2

    Carneades Sun, 08 Mar 2009 19:09:28 +0000

    谢谢!我自己也发现一个错误:
    标准偏差要处以n-1,不是n。

  • # 3

    Lucifer Sun, 08 Mar 2009 19:23:35 +0000

    [i=s] 本帖最后由 Lucifer 于 2009-3-8 19:36 编辑
    另外,您的程序计算算术平均数时显示的是数据的和,而不是平均值。
    我没有太多地检查计算时的代码。只是在数据收集上作了修改。没有添加修约方面的内容。修改后如下:
    [attachment=3347]
    注:删除数据时可以按住Ctrl多选。
    又注:下面这个问题正确吗?我不太清楚您的算法。
    Attached Images

  • # 4

    Carneades Sun, 08 Mar 2009 19:34:19 +0000

    不会这么夸张吧,算术平均值给出的确实是平均数啊。

  • # 5

    Lucifer Sun, 08 Mar 2009 19:37:45 +0000

    那就麻烦检查一下我改后的代码吧。我怀疑我把什么东西改错了。