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

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

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

> Лабиринт, ПОмогите пожалуйста с лабиринтом
keng
сообщение 11.09.2011 11:42
Сообщение #1





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

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


Здравствуйте!Помогите пожалуйста с курсовым по Паскалю!Задание примерно состоит в том чтобы сделать программу которая ищет выход из лабиринта.Самому простейшему варианту буду очень рад(желательно с комментариями)Заранее спасибо!
PS Очень оЧЕНЬ надо А я в Паскале не бум бум)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
keng
сообщение 13.09.2011 13:07
Сообщение #2





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

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


uses wincrt;
label 1,2,3;
var f:text;
i,j,k,xn,jn,ik,jk,n:integer;
s:array[1..100] of string;
a:array[1..2,1..100] of integer;
begin
assign(f,'labirint.in');
reset(f);
while not eof(f) do
begin
i:=i+1;
readln(f,s[i]);
end;
n:=i;
for i:=1 to n do
for j:=1 to length(s[i]) do
begin
if s[i][j]='N' then
begin
xn:=i; jn:=j;
end;
if s[i][j]='K' then
begin
ik:=i; jk:=j;
end;
end;
close(f);
i:=xn; j:=jn; k:=0;
1:while (i<>ik) or (j<>jk) do
begin
if (s[i+2][j]<>'*') and (s[i+1][j]<>'*')
and ((a[1,k-1]<>i+2) or (a[2,k-1]<>j))
and (i+2<=n) and (j<=length(s[i]))
and (i>0) and (j>0) then
begin i:=i+2; k:=k+1; a[1,k]:=i; a[2,k]:=j; goto 1; end;

if (s[i][j+2]<>'*') and (s[i][j+1]<>'*')
and ((a[1,k-1]<>i) or (a[2,k-1]<>j+2))
and (i<=n) and (j+2<=length(s[i])) and (i>0) and (j>0) then
begin j:=j+2; k:=k+1; a[1,k]:=i; a[2,k]:=j; goto 1; end;

if (s[i-2][j]<>'*') and (s[i-1][j]<>'*')
and ((a[1,k-1]<>i-2) or (a[2,k-1]<>j))
and (i<=n) and (j<=length(s[i])) and (i-2>0) and (j>0) then
begin i:=i-2; k:=k+1; a[1,k]:=i; a[2,k]:=j; goto 1; end;

if (s[i][j-2]<>'*') and (s[i][j-1]<>'*')
and ((a[1,k-1]<>i) or (a[2,k-1]<>j-2))
and (i<=n) and (j<=length(s[i])) and (i>0) and (j-2>0) then
begin j:=j-2; k:=k+1; a[1,k]:=i; a[2,k]:=j; goto 1; end;

writeln('NO SOLUTION');
goto 2;
end;
3:writeln(jn,' ',xn);
for i:=1 to k do
writeln(a[2,i],' ',a[1,i]);
2:
end.


ВОт код!
..N..**...K
**.**......
...*..*....
...*****...
**........*
вот то что в файле но он не может найти фаил!что делать?!?!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
keng   Лабиринт   11.09.2011 11:42
TarasBer   1. Изучи основы Паскаля (время у тебя есть). 2. Из...   11.09.2011 12:28
Lapp   сделать программу которая ищет выход из лабиринта....   12.09.2011 3:36
keng   keng, давай начнем с описания лабиринта. Уточни ...   12.09.2011 16:04
TarasBer   Ну на один вопрос ты ответил, ладно. Остался второ...   12.09.2011 16:28
keng   У меня есть некоторые мысли но нужно в одну их соб...   13.09.2011 10:15
TarasBer   Надо дописать в начало процедуры вот это, иначе бу...   13.09.2011 11:26
keng   Да оставил если не сдам отчислят(( А как это все о...   13.09.2011 11:44
TarasBer   Ну пишешь всё это и в конце пишешь begin xk :=...   13.09.2011 12:57
keng   uses wincrt; label 1,2,3; var f:text; i,j,k,xn,jn,...   13.09.2011 13:07
Гость   uses CRT; const mx=100; nx=100; Left=1; Rig...   13.09.2011 14:24
Lapp   Я попробую сделать свой Ловлю на слове ). Я думаю...   13.09.2011 22:49
Lapp   [color=#009900]На всякую гениальную программу найд...   14.09.2011 4:00
keng   Все таки вот этот меня зацепил чем то)Я попробывал...   15.09.2011 10:07
TarasBer   > //дир в будующем является const Чего? Проце...   15.09.2011 10:19
keng   TarasBer Спасибо!Теперь это мне понятно!А ...   15.09.2011 10:59
Lapp   Послушай, keng, это же совсем (ну, хорошо, не совс...   16.09.2011 4:52


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

 



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