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

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

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

> Использование модуля CRT
Гость
сообщение 2.03.2007 1:17
Сообщение #1


Гость






Помогите написать программку. Вообще не имею понятия как ее написать...

Организовать вывод в окне заданного размера двух символов, "перепрыгивающих" друг через друга и двигающихся по горизонтали.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Bokul
сообщение 2.03.2007 3:50
Сообщение #2


Гуру
*****

Группа: Пользователи
Сообщений: 1 117
Пол: Мужской
Реальное имя: Богдан

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


Можно и так:


procedure jump(r:byte; c:char; Var x,y,dir:byte);
var i:byte; b:boolean;
begin
for i:=1 to 2*r do begin
gotoxy(x,y); write(' ');
if (x=lo(windmax)-lo(windmin)) or (x=0) then
dir:=-dir;
inc(x,dir);
if i<=r then dec(y)
else inc(y);
gotoxy(x,y); write©;
delay(time);
end;
end;



Добавлено через 17 мин.
Т.е. полный вариант выглядит так:

uses crt;

const
time=100;

procedure jump(r:byte; c:char; Var x,y,dir:byte);
var i:byte; b:boolean;
begin
for i:=1 to 2*r do begin
gotoxy(x,y); write(' ');
if (x=lo(windmax)-lo(windmin)) or (x=0) then
dir:=-dir;
inc(x,dir);
if i<=r then dec(y)
else inc(y);
gotoxy(x,y); write©;
delay(time);
end;
end;


var x1,y1,x2,y2:byte;
dir1,dir2:byte;
begin
window(10,1,50,25);
TextBackGround(blue);
clrscr;
dir1:=1; dir2:=1;
x1:=3; y1:=10;
x2:=6; y2:=10;
repeat
jump(5,'a',x1,y1,dir1);
jump(5,'b',x2,y2,dir2);
until keypressed;
end.




--------------------
Лао-Цзы :
Знать много и не выставлять себя знающим есть нравственная высота. Знать мало и выставлять себя знающим есть болезнь. Только понимая эту болезнь, мы можем избавиться от нее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Гость
сообщение 2.03.2007 15:12
Сообщение #3


Гость






Спасиба большое.
Я только одного не понял... что делает переменная dir?
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Гость   Использование модуля CRT   2.03.2007 1:17
Bokul   uses crt; const time=100; procedure jump(r:by...   2.03.2007 2:45
volvo   Bokul, а ты в Турбо Паскале это запускать пробовал...   2.03.2007 2:52
Bokul   Ну тоже самое что и в Fpc? Нет? :) Им надое...   2.03.2007 3:00
volvo   Попробуй вот это: ... procedure jump(r:byte; c:cha...   2.03.2007 3:13
Bokul   Можно и так: procedure jump(r:byte; c:char; Var ...   2.03.2007 3:50
Гость   Спасиба большое. Я только одного не понял... что д...   2.03.2007 15:12
volvo   Направление движения... Если dir > 0 , то симво...   2.03.2007 15:14
-Кошка-   А у меня такая же задача.Только жанные размера окн...   5.03.2007 16:42
Алена   Изменяем только основную программу, все остальное ...   5.03.2007 16:48
-Кошка-   Спасибо. Попробую...   6.03.2007 15:25
Гость   А как например эта задача будет выглять в блок-схе...   6.03.2007 21:07
Гость   Если кто-то может, то выложите здесь лучше блок-сх...   6.03.2007 21:48
klem4   Программа построения блок-схем Пробовал ?   6.03.2007 22:14
Yulianna   А как создать программу,чтоб двигались два символа...   7.03.2007 16:16
Zzzz...   Ты должна удалять и рисовать символы по-переменно....   7.03.2007 17:17
volvo   Yulianna, это что, для всей группы задания? Так и ...   7.03.2007 18:13
Yulianna   volvo,это одно моё задание. Я только учусь програм...   8.03.2007 0:54
Zzzz...   Ну вот такой сойдёт??? uses crt; var a,b:char;...   7.03.2007 19:25


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

 



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