![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
striker |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 86 Пол: Мужской Репутация: ![]() ![]() ![]() |
http://forum.sources.ru/index.php?showtopi...0entry2263928
Сворачивается экран Паскаля (турбо) присваивание detect'а не помогает |
![]() ![]() |
striker |
![]()
Сообщение
#2
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 86 Пол: Мужской Репутация: ![]() ![]() ![]() |
нет
![]() Он с эксплорером открытым сворачивается Вот попытался совместить с программой из соседней темы - всё, запутался. Суть та же, вывод другой Так ли я время преобразую? Код 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. |
![]() ![]() |
![]() |
Текстовая версия | 7.09.2025 6:20 |