实现的思路是:开始做第一题时取出系统时间,做完最后一题取出系统时间,把这两个时间相减得出一数值m,判断若m<=15,则总分加5;若15<m<=20,则总分加3;若20<m<=25,则总分加2。后面这个判断用条件分支可实现,这里不再赘述,我们主要讲一下取系统时间的用法。
首先创建三个整数变量,且必须是全程变量:
num1----取出开始做第一题时的系统时间;
num2----取出做完最后一题的系统时间;
num----num2-num1。
函数GetFormatedTime("格式串")中,格式串有多种,你可以查看用户手册或联机帮助。我们现在只用到取时间的参数,如下:
%H----以24-小时的方式表示小时;
%M----以十进制表示分;
%S----以十进制表示秒。
结果我们取出的时间应该是:小时*3600+分*60+秒。最后得出的数值的单位是秒(注意:应相应修改条件分支中数值的单位,都应变成秒,例如15分钟*60=900秒)。但是,函数GetFormatedTime的返回值是字符串,字符串无法作“乘”运算,我们还需要用函数AtoINT把字符串转换成整数。这样表达式就写成:
num1=AtoINT(GetFormatedTime("%S"))+AtoINT(GetFormatedTime("%M"))*60+AtoINT(GetFormatedTime("%H"))*3600
我们要在第一题所在页的“页进入前”事件中加入上列表达式,即一进入到第一题就开始计时;然后在最后一题所在页的“页退出后”事件中给num2赋值如下:
num2=AtoINT(GetFormatedTime("%S"))+AtoINT(GetFormatedTime("%M"))*60+AtoINT(GetFormatedTime("%H"))*3600
即在做完最后一题以及退出这页时停止计时。之后跳转到列出总分的一页,在这页的“页进入前”事件中作运算:num = num2-num1。然后再作判断。
