Цитата:
Сообщение от jax
огромное спасиво за пояснение,учту на будущие,нужно написать программу в PascaleABC,желательно до нового года, электронные часы,без стрелок
|
Ну ежели без особых прибамбасов, то - пожалуйста:
Код:
Uses Crt,Dos;
VAR
hour,min,sec_old,sec_new:Word;
sec100,msec,usec:Word;
BEGIN
ClrScr;
GetTime(hour,min,sec_new,sec100);
Repeat
Repeat
sec_old:=sec_new;
GetTime(hour,min,sec_new,sec100);
Until sec_old<>sec_new;
GoToXY(1,1);
If (min<10) and (sec_new<10) then
Write(hour:2,':0',min,':0',sec_new)
else
If sec_new<10 then
Write(hour:2,':',min,':0',sec_new)
else
If min<10 then
Write(hour:2,':0',min,':',sec_new)
else
Write(hour:2,':',min,':',sec_new);
Until KeyPressed;
ReadKey;
END.
ВНИМАНИЕ! ВАЖНО!
В программе применена процедура GetTime (модуль DOS). Но! Дело в том, что, в зависимости от реализации Паскаль-транслятора, она может иметь три набора параметров:
1. GetTime(hour, min, sec:Word); (считываются часы, минуты и секунды).
2. GetTime(hour, min, sec, sec100:Word); (считываются часы, минуты, секунды и сотые доли секунд; в моём Паскале - именно такая).
1. GetTime(hour, min, sec, msec, usec:Word); (считываются часы, минуты, секунды, миллисекунды, микросекунды).
Какой именно вариант предусмотрен в PascalABC я не знаю, это нужно установить Вам. На всякий случай все параметры описаны в перечне параметров (раздел VAR), Вам лишь нужно (при необходимости) в двух местах подправить перечень параметров процедуры GetTime. В любом случае интервалы времени, меньшие секунды, на экран не выводятся.