Pascal计时函数
答案:5 悬赏:80 手机版
解决时间 2021-11-20 03:40
- 提问者网友:戎马万世
- 2021-11-19 05:30
Pascal计时函数
最佳答案
- 五星知识达人网友:夜风逐马
- 2021-11-19 06:36
1.Program XXXX;
uses sysutils;
var t:real;
begin
t:=now; //sysutils的标准函数,返回的是现在的时间,单位是“天(day)”
{XXXX自己的程序}
writeln((now-t)*86400:0:4);//把天的单位转换成秒,加场宽限制精度小数点后四位
2.找到pascal里的sysutils单元粘到fp.exe所在文件夹下
程序开头写上uses sysutils;
此后now就是运行的时间
但now的单位不是秒,需要乘上86400
例:
uses sysutils;
var
i :integer;
time :real;
begin
time:=now;
for i:=1 to 10000000 do inc(k);
writeln((now-time)*86400);
end.
输出的就是运行的时间,这样就可以自己测程序的运行时间了
Pascal的名称是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal的,它由瑞士Niklaus Wirth教授于六十年代末设计并创立的。
Pascal语言语法严谨,层次分明,程序易写,可读性强,是第一个结构化编程语言。
Pascal计算机程序教程如今已经有专业化课程,并且越来越完善和严格化。
uses sysutils;
var t:real;
begin
t:=now; //sysutils的标准函数,返回的是现在的时间,单位是“天(day)”
{XXXX自己的程序}
writeln((now-t)*86400:0:4);//把天的单位转换成秒,加场宽限制精度小数点后四位
2.找到pascal里的sysutils单元粘到fp.exe所在文件夹下
程序开头写上uses sysutils;
此后now就是运行的时间
但now的单位不是秒,需要乘上86400
例:
uses sysutils;
var
i :integer;
time :real;
begin
time:=now;
for i:=1 to 10000000 do inc(k);
writeln((now-time)*86400);
end.
输出的就是运行的时间,这样就可以自己测程序的运行时间了
Pascal的名称是为了纪念十七世纪法国著名哲学家和数学家Blaise Pascal的,它由瑞士Niklaus Wirth教授于六十年代末设计并创立的。
Pascal语言语法严谨,层次分明,程序易写,可读性强,是第一个结构化编程语言。
Pascal计算机程序教程如今已经有专业化课程,并且越来越完善和严格化。
全部回答
- 1楼网友:拜訪者
- 2021-11-19 10:13
哈哈,你也来问,没想到
- 2楼网友:神的生死簿
- 2021-11-19 08:49
1。在一个目录新建一个.txt文件
在里面输入:
time
time
time
<要测试的可执行文件名>
time
time
time
time
time
time
time
写完了,改扩展名为.bat。
2。把你程序的.exe文件托到目录下
3。双击运行.bat文件
第一次回跳出时间,让你更新时间。
不理它!一直摁回车!
直到它运行完了你的程序,再跳出时间。
比较一下运行程序之前和之后的时间,就可得出你程序的运行时间。
注意!
1。程序必须文件输入输出或者是内定好数据测试,键盘输入的话是要你输数据的,时间就不灵了。
2。测试出的时间可能会多一些,但是多了没关系,反正测试的时候也有偏差。
PS:据说考试的时候评测就是这个方法!
在里面输入:
time
time
time
<要测试的可执行文件名>
time
time
time
time
time
time
time
写完了,改扩展名为.bat。
2。把你程序的.exe文件托到目录下
3。双击运行.bat文件
第一次回跳出时间,让你更新时间。
不理它!一直摁回车!
直到它运行完了你的程序,再跳出时间。
比较一下运行程序之前和之后的时间,就可得出你程序的运行时间。
注意!
1。程序必须文件输入输出或者是内定好数据测试,键盘输入的话是要你输数据的,时间就不灵了。
2。测试出的时间可能会多一些,但是多了没关系,反正测试的时候也有偏差。
PS:据说考试的时候评测就是这个方法!
- 3楼网友:西岸风
- 2021-11-19 07:31
我用的是DELPHI,有函数GetTickCount返回当前的时钟,我估计FREEPASCAL也有类似的函数吧,使用方法:
var StartTime,EndTime:DWORD;
begin
StartTime:=GetTickCount;
......你的程序......
EndTime:=GetTickCount;
耗费的时间为EndTime-StartTime,单位为毫秒。
var StartTime,EndTime:DWORD;
begin
StartTime:=GetTickCount;
......你的程序......
EndTime:=GetTickCount;
耗费的时间为EndTime-StartTime,单位为毫秒。
- 4楼网友:迟山
- 2021-11-19 07:18
Uses Dos;
h,m,s,ss:word;{存储时间}
t0{开始}:real;
begin
gettime(h,m,s,ss);{获取当前系统时间}
t0;=h*3600+m*60+s+ss/100;
......{main}
gettime(h,m,s,ss);{获取当前系统时间}
writeln((h*3600+m*60+s+ss/100-t0):3:2);
end.
注意不要在程序显示结果后,第二次gettime前写readln;
h,m,s,ss:word;{存储时间}
t0{开始}:real;
begin
gettime(h,m,s,ss);{获取当前系统时间}
t0;=h*3600+m*60+s+ss/100;
......{main}
gettime(h,m,s,ss);{获取当前系统时间}
writeln((h*3600+m*60+s+ss/100-t0):3:2);
end.
注意不要在程序显示结果后,第二次gettime前写readln;
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯