Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2009, 23:43   #1
Dayvil
 
Регистрация: 05.11.2009
Сообщений: 3
Вопрос Цифровые часы

Всем привет! как можно улучшить внешний вид часов(будильника), т.е. сделать 4 цифровых разряда часы и минуты а секунды (5-6разряд) сделать мигающими (часы были б в рамочке неплоха бы) А для будильника что б его можно было включить и выключить при возможности что бы для будильника была отдельная кнопочка для его настройки(вкл/выкл/изменить время) подскажите если возможно.
говорят код программы можно упростить
код программы:

Код:
uses crt,dos;
var regs:registers;
    h,m,s,h1,m1,s1:byte;
procedure cursoroff;assembler;
asm mov ah,1
    mov ch,20h
    int 10h
end
procedure alarm;
var f:integer;
begin clrscr;
      gotoxy(24,12);
      textcolor(lightred);
      writeln('nagmite klavichu chtobi ostanivit chasi ...');
      cursoroff;
      repeat f:=695;
             sound(f);
             delay(100);
      while f>671 do
      begin dec(f);
            sound(f);
            delay(100);
      end;
      f:=588;
      sound(f);
      delay(300);
      while f<610 do
      begin sound(f);
            delay(150);
            inc(f);
      end;
      until keypressed;
      nosound;
end;
begin textbackground(black);
      clrscr;
      textcolor(lightblue);
      repeat gotoxy(57,10);write('         ');
             gotoxy(14,10);
             write('Vvedite chas budilnika (0...23) : ');
             readln(h);
      until (h>=0)and(h<24);
      repeat gotoxy(57,12);write('         ');
             gotoxy(14,12);
             write('Enter minutes of your alarm-clock (0...59) : ');
             readln(m);
      until (m>=0)and(m<60);
      repeat gotoxy(57,14);write('         ');
             gotoxy(14,14);
             write('Enter seconds of your alarm-clock (0...59) : ');
             readln(s);
      until (s>=0)and(s<60);
      clrscr;
      gotoxy(20,3);
      textcolor(lightmagenta);
      gotoxy(23,12);
      write('Time in your BIOS-clock now is  ');
      textcolor(yellow);
      gotoxy(25,10);
      write('Alarm-clock been starting at ');
      if h<10 then write('0',h,':')
      else write(h,':');
      if m<10 then
      write('0',m,':')
      else write(m,':');
      if s<10 then
      write('0',s)
      else write(s);
      textcolor(green);
      gotoxy(16,14);
      writeln('Press any key for exit before alarm-clock been started.');
repeat
regs.ah:=$2c;
intr($21,regs);
with regs do
begin gotoxy(54,12);
textcolor(lightmagenta);
h1:=ch;
if ch<10 then write('0',ch,':')
else write(ch,':');
m1:=cl;
if cl<10 then
write('0',cl,':')
else write(cl,':');
s1:=dh;
if dh<10 then
write('0',dh)
else write(dh);
end;
cursoroff;
until (keypressed)or((h=h1)and(m=m1)and(s=s1));
if ((h=h1)and(m=m1)and(s=s1)) then alarm;
end.
Для правильного оформления кода (как того требуют наши правила) используется кнопка со значком # в окне редактирования.

Последний раз редактировалось mihali4; 05.11.2009 в 23:49.
Dayvil вне форума Ответить с цитированием
Старый 06.11.2009, 09:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
т.е. сделать 4 цифровых разряда
Точнее... Что имеется ввиду?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 06.11.2009, 09:43   #3
Скандербег
Форумчанин
 
Регистрация: 04.04.2009
Сообщений: 438
По умолчанию

Видимо, речь об отображении цифры сегментами, что-то типа:
__
|_|
|_|
Скандербег вне форума Ответить с цитированием
Старый 06.11.2009, 12:06   #4
Dayvil
 
Регистрация: 05.11.2009
Сообщений: 3
По умолчанию

ну нечто подобное иль проста цифры покрупнее (шрифт как нить увеличить)
Dayvil вне форума Ответить с цитированием
Старый 06.11.2009, 13:44   #5
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Делайте, подключив Graph - там можно кучу всего с текстом делать (размер в том числе)
TwiX вне форума Ответить с цитированием
Старый 06.11.2009, 16:15   #6
Dayvil
 
Регистрация: 05.11.2009
Сообщений: 3
По умолчанию

ну предложить одно, а помочь осуществить другое )
Dayvil вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программа цифровые часы на Паскале ЯН_КА Помощь студентам 16 21.11.2010 13:40
Не могу сделать цифровые часы sid Общие вопросы Delphi 25 16.12.2009 05:06
Помогите TreeView и цифровые значения KWN, lnc Общие вопросы Delphi 15 02.06.2009 17:22
Часы Bingam Vici Свободное общение 5 18.05.2009 14:50
Цифровые часы без фона Roof Помощь студентам 13 22.07.2007 12:18