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

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

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

> Циклы в Graph
Player
сообщение 13.12.2005 23:18
Сообщение #1


Гость






Всем привет. Может кто поможет сделать, чтобы эти два цикла выполнялись одновременно.

Код
Program Anim;
Uses Crt,Graph;
Var I,J,Gd,Gm:Integer;
Begin
Clrscr;
Gd:=Detect;
Gm:=2;
InitGraph (Gd,Gm,'C:\BP\BGI');
SetBKColor (7);
ClearDevice;

SetColor (6);
For I:=200 To 300 Do Begin
Line (250,I,290,J);
Line (290,J,305,J);
Line (305,J,250,I);
ClearViewPort;
Delay(4000);
End;

For J:=110 To 210 Do Begin
Line (250,I,290,J);
Line (290,J,305,J);
Line (305,J,250,I);
ClearViewPort;
Delay(4000);
End;

CloseGraph;
End.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Alex7
сообщение 15.12.2005 20:01
Сообщение #2


Пионер
**

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

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


Ну, посмотрел прогу.
Круто, красиво, наглядно.
НО зачем мне такой сложный пример, если мне нужно всего лишь ответ: КАК сделть процессы одновремеено?
Хотел, чтобы мне на примере моей проги показали, как это нужно сделать.
Если таки кто-то сможет(90% моего обращения это, конечно к Volvo=) ) То привожу свою прогу, в которой я хотел сделать "одновременное" выполнение подсчета nsk и выполнение процедуры point
Program NaimensheSpilneKratne(lab5);
Uses CRT;
Var a,b,c: integer;
dob,max: integer;
nsk: longint;
procedure SetCursorSize(cStart, cEnd: byte); assembler;
asm
mov ah, 1
mov ch, cStart
mov cl, cEnd
int 10h
end;
procedure SetNormalCursor;
var start_end: word;
begin
if LastMode > Font8x8 then start_end := $0507
else
if LastMode = Mono then start_end := $0b0c
else start_end := $0607;
SetCursorSize(hi(start_end), lo(start_end));
end;
procedure SetNoCursor;
begin
SetCursorSize(32, 0);
end;
Procedure point(p:byte);
Var i,j: byte;
Begin
While p=1 do
begin
For i:=1 to 3 do
begin
write('.'); for j:=1 to 4 do delay(9999);
end;
gotoxy(wherex-3,wherey); clreol; for j:=1 to 4 do delay(9999);
end;
End;
Begin
clrscr; textbackground(0);
textcolor(1); gotoxy(26,2); writeln('.::Џа®Ја ¬ ®ЎзЁб«Ґ­­п Ќ‘Љ::.');
Textcolor(yellow); For b:=1 to 4 do delay(9999);
Writeln('‚ўҐ¤iвм 3 жi«Ёе зЁб« ');
gotoxy(65,1);textcolor(1); Write('Ctrl+Pause=>exit'); gotoxy(1,4);
textcolor(15); readln(a,b,c);
{ЏҐаҐўiаЄ ­ ўҐ«ҐзЁ­г\begin}
if (a<2) or (a>9999) or (b<2) or (b>9999) or (c<2) or (c>9999) then
begin
repeat
textcolor(yellow);
writeln('ЌҐўiа­Ґ зЁб«®! ’ॡ г ¤i Ї §®­i- 2..9999 !');
textcolor(12{28});
gotoxy(30,wherey); write('-=‚ўҐ¤iвм § ­®ў®=-'); textcolor(15);
repeat until keypressed;
if keypressed then
begin
repeat
delline; gotoxy(1,wherey-1);
until wherey=4;
delline; readln(a,b,c);
end;
until (a>1) and (a<9999) and (b>1) and (b<9999) and (c>1) and (c<9999);
end;
{ЏҐаҐўiаЄ ­ ўҐ«ҐзЁ­г\end}
{ЏаЁбў®Ґ­­п §­ 祭м\begin}
if (a>=b) and (a>=c) then max:=a else
if (b>=a) and (b>=c) then max:=b else
max:=c;
{ЏаЁбў®Ґ­­п §­ 祭м\end}
textcolor(14); gotoxy(26,wherey); Write('‰¤Ґ ®ЎзЁб«Ґ­­п. ‡ 祪 ©вҐ.');
SetNoCursor;
point(0);
nsk:=0;
Repeat nsk:=nsk+max until (nsk mod a=0) and (nsk mod b=0) and (nsk mod c=0);
delline; gotoxy(1,wherey);
SetNormalCursor;
dob:=a*b*c;
sound(7000); delay(9999);delay(9999); nosound;
textcolor(green); writeln('max: ',max,#13,#10,'Ќ‘Љ жЁе зЁбҐ«= ',nsk);
if nsk<>dob then
writeln('i ­Ґ ¤®аiў­оу хе ¤®ЎгвЄг')
else
writeln('i ¤®аiў­оу хе ¤®ЎгвЄг');
For b:=1 to 9 do delay(9999);
gotoxy(58,1); clreol;
gotoxy(30,25); textcolor(8{24}); Write('Press any key to exit');
{Єгаб®а- ­i¬ жiп\begin}
repeat
For b:=50 downto 30 do
begin
For a:=1 to 3 do delay(9999); gotoxy(b,25); if keypressed then exit;
end;
For b:=31 to 50 do
begin
For a:=1 to 3 do delay(9999); gotoxy(b,25); if keypressed then exit;
end;
until keypressed;
{Єгаб®а- ­i¬ жiп\end}
End.
{Џ ¬'пвЄ }
{Ќ i¬Ґ­миҐ бЇi«м­Ґ Єа в­Ґ - ­ i¬Ґ­миҐ ¤®¤ в­у, пЄҐ ¤i«Ёвмбп ­ Є®¦­Ґ § жЁе зЁбҐ«.}

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

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


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

 



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