pascal编译中这么测试时间,批数理怎么编

来源:百度知道 编辑:UC知道 时间:2024/06/16 02:57:41
在考试比赛中题目都有时限,但是在编译中怎么测时间,批数理是可以用的,但怎么编。除了掐手表,有什么方法不用批数理测出时间,精确到百分为就行了。

两种方法:
第一,PASCAL本身就是可以记录时间的。
通过访问MemL[Seg0040:$006C]来获取当前时间,它返回的是当日零时到现在所经过的时间,单位约为55毫秒(约1/18.2秒)。
比如,测定<语句1>执行的时间
starttime,endtime:longint;
Starttime:= MemL[Seg0040:$006C];
<语句1>
endtime:= MemL[Seg0040:$006C];
writeln((endtime-starttime)/18.2:0:2); 相减得出语句1运行的时间
或: writeln((MemL[Seg0040:$006C] -starttime)/18.2:0:2);

第二,你说的是用批处理写评测程序,也可以测时间,我给你一个例子。
@echo off
echo 测试时间
time<enter
yourprogram.exe
time<enter
pause
说明一下,yourprogram.exe是你程序的名字,运行以后显示的两个时间相减就是你的程序运行时间。运行之前还需要在程序目录下新建一个叫"ENTER"(没有扩展名)的空文件。

神啊,谁给翻译一下吧。