free pascal程序运行时间
4个回答
展开全部
①如果你是Linux系统,。。。那其实会用Linux的基本都知道
先编译,控制台输入:fpc 你的程序.pas
然后在运行前加上time即可:time ./你的程序
他会显示程序的运行时间
②如果你是Windows系统,可以试着用free pascal内部的时间获取函数
方法也比较多,这里列出2种:
一、先在开头uses dos;在主程序里就可以GetTime(时,分,秒,毫秒),这些变量是word类型。获得这些信息后就可以计算时间差了,比如你可以时×3600+分×60+秒+毫秒/1000就可以获得秒数。
二、先在开头uses windows;这样就可以用winapi了。GetTickCount或GetTickCount64函数可以获得操作系统启动到现在的毫秒数,减一减就能获得时间差了。
先编译,控制台输入:fpc 你的程序.pas
然后在运行前加上time即可:time ./你的程序
他会显示程序的运行时间
②如果你是Windows系统,可以试着用free pascal内部的时间获取函数
方法也比较多,这里列出2种:
一、先在开头uses dos;在主程序里就可以GetTime(时,分,秒,毫秒),这些变量是word类型。获得这些信息后就可以计算时间差了,比如你可以时×3600+分×60+秒+毫秒/1000就可以获得秒数。
二、先在开头uses windows;这样就可以用winapi了。GetTickCount或GetTickCount64函数可以获得操作系统启动到现在的毫秒数,减一减就能获得时间差了。
展开全部
如果只是要程序运行的精确时间的话。。。
program extim;
uses sysutils; {FP的系统单元}
var tt:tdatetime; {时间类型,Tdatetime是一个双精度的浮点数,如果 tt = 234.567就表示234.567天,当然是从公元0年开始计算的}
Begin
{读入数据}
tt:=now*86400; {now是系统函数,返回当前天数,*86400s/天就是秒数了}
{这里是你的主程序}
tt:=now*86400-tt;
writeln(tt:0:8); {程序运行秒数}
readln;
END.
顺便,比赛交程序时可不要写这些。
program extim;
uses sysutils; {FP的系统单元}
var tt:tdatetime; {时间类型,Tdatetime是一个双精度的浮点数,如果 tt = 234.567就表示234.567天,当然是从公元0年开始计算的}
Begin
{读入数据}
tt:=now*86400; {now是系统函数,返回当前天数,*86400s/天就是秒数了}
{这里是你的主程序}
tt:=now*86400-tt;
writeln(tt:0:8); {程序运行秒数}
readln;
END.
顺便,比赛交程序时可不要写这些。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
哦,真神奇呀!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
计算时间复杂度的方法教程上都有 可以根据时间复杂度来估计运行时间
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询