用户ID: 密码: 验证:

登 录

注 册 取回密码

中山教育

中山国际网

中国教育在线

时代财富科技公司 FortuneAge Technology Co., Ltd. 校园博客客服网站(新)

我的资料

midpoint

博客信息

积分:2028
等级:4级 lv 4
日志总数:479
发表评论总数:24 ( 查看)
获得评论总数:39
发表留言总数:0
所属学校:三鑫
收藏本站:

最新公告

最新相册

我的日历

最新评论

最新留言

[全部留言] [发表留言]
SOGO学术论文网(http://www.sogoart....
马老师,你的博客,两个字,很好,我,一个字,顶!我常上你这...
中 国 教 育 学 会 函 件 ...
马老师,您好! 您的博客内容很丰富、知识性也很...
--书宏
马老师,谢谢您关于电脑学习的推荐!望不吝指教噢

RSS


首页 -> 信息学竞赛->怎样在程序中卡时
怎样在程序中卡时

我们经常在编写程序的时候想知道程序运行的时间,即所谓的程序的卡时,这里可以借助pascal中的sysutils中的TSystemTime类型,请先看fp中关于TSystemTime的知识:
Uses sysutils;
Var ST : TSystemTime;
Begin
 DateTimeToSystemTime(Now,ST);
 With St do
 begin
 Writeln ('Today is ',year,'/',month,'/',Day);
 Writeln ('The time is ',Hour,':',minute,':',Second,'.',MilliSecond);
 end;
 Writeln ('Converted : ',DateTimeToStr(SystemTimeToDateTime(ST)));
End.
 
可以看出如果一个变量定义为TSystemTime,获取时间后可以通过两次获取的时间差得到实际运行时间,其中st.year表示年,st.month表示月,st.day表示天,st.hour表示小时,st.minute表示分钟,st.second表示秒,st.millisecond表示毫秒,最后一项说精确卡时的关键。
 
举例:
Uses sysutils;
Var st,ed: TSystemTime;
  i,s:longint;
begin
 DateTimeToSystemTime(Now,ST);
 for i:=1 to 10000 do write(i*i,' ');
 writeln;
 DateTimeToSystemTime(Now,ED);
 s:=(ed.second-st.second)*1000+(ed.millisecond-st.millisecond);
 writeln(s div 1000,'s ',s mod 1000,'ms');
 readln;
end.
 

网友评论

共 0 页,0 条记录  

用户名:
密码:
您的评论:
正在载入编辑器...
请输入验证码:


发 表 评 论

马军-中山教师家园