IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> цифровой секундомер в графике, семисегментый
striker
сообщение 7.06.2009 11:11
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 86
Пол: Мужской

Репутация: -  0  +


http://forum.sources.ru/index.php?showtopi...0&#entry2263928

Сворачивается экран Паскаля (турбо)
присваивание detect'а не помогает
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
striker
сообщение 7.06.2009 15:51
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 86
Пол: Мужской

Репутация: -  0  +


нет smile.gif
Он с эксплорером открытым сворачивается

Вот попытался совместить с программой из соседней темы - всё, запутался. Суть та же, вывод другой

Так ли я время преобразую?

Код
uses crt,dos,graph;
const
  size = 50;
  fore = lightred;
  back = darkgray;

type
  indicator = 1 .. 7;
  i_set = set of indicator;
  rec = record
    xs, ys, xf, yf: integer;
  end;
  arr_digits = array['0' .. '9'] of i_set;
  arr_lines = array[1 .. 7] of rec;

const
  digits: arr_digits = (
    [1, 2, 3, 4, 5, 6],
    [3, 4],
    [2, 3, 5, 6, 7],
    [2, 3, 4, 5, 7],
    [1, 3, 4, 7],
    [1, 2, 4, 5, 7],
    [1, 2, 4, 5, 6, 7],
    [2, 3, 4],
    [1, 2, 3, 4, 5, 6, 7],
    [1, 2, 3, 4, 5, 7]
  );
  lines: arr_lines = (
    (xs:0; ys:0; xf:0; yf:size),
    (xs:0; ys:0; xf:size; yf:0),
    (xs:size; ys:0; xf:size; yf:size),
    (xs:size; ys:size; xf:size; yf:2*size),
    (xs:size; ys:2*size; xf:0; yf:2*size),
    (xs:0; ys:2*size; xf:0; yf:size),
    (xs:0; ys:size; xf:size; yf:size)
  );

var
  xpos, ypos: integer;

procedure put_indicator(list: i_set);
var i: indicator;
begin
  for i := low(indicator) to high(indicator) do begin
    if i in list then setcolor(fore) else setcolor(back);
    with lines[i] do
      line(xpos + xs, ypos + ys, xpos + xf, ypos + yf);
  end;
  inc(xpos, size + 10);
end;
procedure print(s: string);
var i: integer;
begin
  for i := 1 to length(s) do begin
    case s[i] of
      '0' .. '9':
        put_indicator(digits[s[i]]);
      '-':
        put_indicator([7]);
    end;
  end;
end;

Function GetTime: LongInt;
Var
  h, m, s, ms: Word;
  R: longint;
begin
  Dos.GetTime(h, m, s, ms);
  GetTime := ms + 100 * (s + 60 * (longint(m) + 60 * h));
end;

var g_driver, g_mode,i: integer;
stop:boolean;
curr_time:longint;

s:string;
begin
  initgraph(g_driver, g_mode, '');


    xpos := 150; ypos := 150;

  setwritemode(xorput);

  i := 0; stop := false;
  repeat
  repeat

    curr_time := GetTime;
    while GetTime - curr_time < 100 do; { просто ждем 1 секунду }
    if keypressed then begin
      stop := true; while keypressed do readkey;
    end;
  str(curr_time,s);
   print(s);
     inc(i);
  until stop;
  stop:=false;
  readln;
  until keypressed;
  readln;
  closegraph;
   { <--- Вот так же передашь текущее время в виде строки в процедуру print }

  readln;
  closegraph;
end.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 31.07.2025 21:36
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"