Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2008.07.20;
Скачать: [xml.tar.bz2];

Вниз

Преобразования Pascal в Delphi   Найти похожие ветки 

 
non1ka ©   (2008-05-28 12:33) [0]

Добрый день господа Мастера :)...
У меня есть проблемка которая требует решения...

Вобщем один мой знакомый попросил меня составить ему программу для решения "хода коня" на Delphi...

Я с этим языком не знаком и с помощью книжки смог написать листинг на Turbo Pascale... Я слышал что Delphi и Pascal вроде как бы родственные языке...

Задача заключается в слудеющем мне нужно "перекомпилировать" :) листинг в Delphi нужна ваша помощ.....

Заранее спасибо!!


 
Romkin ©   (2008-05-28 12:42) [1]

Убери CRT, добавь волшебные строки в начале программы
{$IFDEF WIN32}
 {$APPTYPE CONSOLE}
{$ENDIF}

И компилируй :)


 
SergeyIT ©   (2008-05-28 12:43) [2]

А Делфи на машине есть?


 
non1ka ©   (2008-05-28 12:45) [3]


> Убери CRT, добавь волшебные строки в начале программы
> {$IFDEF WIN32}
>  {$APPTYPE CONSOLE}
> {$ENDIF}
> И компилируй :)

Волшебство :)

А если вас не затруднит можно рассказать о смысле этих столь прекрасных строк :)


 
non1ka ©   (2008-05-28 12:46) [4]


> А Делфи на машине есть?

Пока что нет но думаю скачать с интернета сейчас....


 
Palladin ©   (2008-05-28 12:47) [5]

в рассказе смысла будет куча терминов, так же нуждающихся в рассказе об их смысле...


 
non1ka ©   (2008-05-28 12:53) [6]


> Palladin


Вобщем одним словом если я заменю CRT на 3 этих строчки программа будет компилироваться и работать без проблем в среде Delphi????

А задал я этот вопрос по причине того что эту программу он должен защищать на зачете...

А если эти строки дают возможность просто компилировать в Delphi программу на Pascale то может быть у него будут проблеммы :)


 
No_Dead ©   (2008-05-28 12:56) [7]

> попросил меня составить ему программу


> он должен защищать на зачете...


сочувствую...
ЗЫ. а потом ветки о «еденицах» появляются...


 
Palladin ©   (2008-05-28 12:58) [8]

программа компилироваться будет.

Эти строчки дают программе возможность использовать WriteLn/ReadLn, а, как правило, больше примитивной академпрограмме и не нужно...


 
Mystic ©   (2008-05-28 13:02) [9]

> как правило, больше примитивной академпрограмме и не нужно.

Как правило... Но... во-первых, могут быть ассемблерные вставки и inline. Во-вторых, программа может просто тупо писать в видеопамять по адресу B800:0000 безо всяких CRT. В третьих, многие часто игрались в CRT всякими методами вроде GotoXY, SetColor, SetBackgroundColor, ... :)


 
Sergey13 ©   (2008-05-28 13:02) [10]

> [0] non1ka ©   (28.05.08 12:33)
> Вобщем один мой знакомый попросил меня составить ему программу
> для решения "хода коня" на Delphi...

http://delphimaster.net/view/15-1211392855/

8-)


 
non1ka ©   (2008-05-28 13:03) [11]


> Palladin

Вот теперь понятно.. просто как я понял до этого разговора, что единственное отличие двух языков при минимальном использованние возможностей, Это отличие операторов ввода и вывода информации...
Спасибо огромное сегодня буду пробывать!!


 
Romkin ©   (2008-05-28 13:03) [12]

Тут надо смотреть, какие модули в uses используются. Еси толко свои - больше практически ничего делать не придется.
Хотя могут быть варианты. От программы зависит


 
SergeyIT ©   (2008-05-28 13:07) [13]

Можно скачать www.FreePascal.org - он вообще TP7 подобный


 
Palladin ©   (2008-05-28 13:07) [14]


> Mystic ©   (28.05.08 13:02) [9]

токмо это уже не "примитивные" академпрограммы... если человек обладает глубоко системными знаниями и приемами, то уж портировать в нужную среду он и сам сможет...


 
Palladin ©   (2008-05-28 13:08) [15]


> non1ka ©   (28.05.08 13:03) [11]
> Это отличие операторов ввода и вывода информации...

ты понял не правильно


 
Romkin ©   (2008-05-28 13:08) [16]

У тебя в uses не должно быть стандартных модулей вообще. То есть, никаких CRT, GRAPH, OBJECTS и тд.


 
non1ka ©   (2008-05-28 13:14) [17]


> SergeyIT

Спасибо за ссылку...

> Romkin

кроме CRT нет... все сегодня вечером попытаюсь сделать если что завтра расскажу результат..

> Palladin

РРРРР :( Я извеняюсь, просто с программирование не люблю иметь дело... все знания основаны на
> примитивной академпрограмме
:)


 
Kolan ©   (2008-05-28 15:35) [18]

> РРРРР :( Я извеняюсь, просто с программирование не люблю
> иметь дело...

Млин, когда же у нас сделабт так, чтобы можно было выбирать предметы, которые хочешь изучать. Тогда и вопросов не будет. Уравниловка не рулит :(


 
_mirage_   (2008-05-28 15:39) [19]

>[18] Kolan © (2008-05-28 15:35:00)
ну да. софоложество, закон божий и новую хронологию. где мозги не нужны.

---
Understanding is not required. Only obedience.


 
Kolan ©   (2008-05-28 18:00) [20]

> закон божий

Можно подумать ты спец по нему, что так говоришь.


 
_mirage_   (2008-05-28 18:23) [21]

>[20] Kolan © (2008-05-28 18:00:00)
конечно. любой спец. оно же не верифицируемо, так что — что не выдумывай, всё одинаково достоверно.

---
Understanding is not required. Only obedience.


 
non1ka ©   (2008-06-03 10:57) [22]

Вылаживаю листинг программы на Turbo Pascale...
Program HorseMoving;
Uses
CRT;
Var
Field: Array [1..20] of Array [1..20] of Integer;
N: Integer;
MaxX, MaxY: Integer;
x, y: Integer;
Procedure WritePosition;
Var
X, y: Integer;
Begin
ClrScr;
For y:=1 to MaxY do
For x:=1 to MaxX do
Begin
GotoXY (x*4, y*2);
Write (Field[x, y]);
End;
End;

Procedure Move(x, y: Integer);
Begin
N := N+1;
Field [x,y] := N;
If N = MaxX * MaxY Then
Begin
WriteLN (‘ Есть Решение!!!‘);
WritePosition;
ReadKey;
Halt;
End;
If (x+2<=MaxX) and (y+1<=MaxY) Then
If Field[x+2, y+1]=0 Then move (x+2, y+1);
If (x+1<=MaxX) and (y+2<=MaxY) Then
If Field[x+1, y+2]=0 Then move (x+1, y+2);
If (x-1>0) and (y+2<=MaxY) Then
If Field[x-1, y+2]=0 Then move (x-1, y+2);
If (x-2>0) and (y+1<=MaxY) Then
If Field[x-2, y+1]=0 Then move (x-2, y+1);
If (x-2>0) and (y-1>0) Then
If Field [x-2, y-1]=0 Then move (x-2, y-1);
If (x-1>0) and (y-2>0) Then
If Field [x-1, y-2]=0 Then move (x-1, y-2);
If (x+1<=MaxX) and (y-2>0) Then
If Field [x+1, y-2]=0 Then move (x+1, y-2);
If (x+2<=MaxX)and (y-1>0) Then
If Field[x+2, y-1] = 0 Then move (x+2, y-1);
N := N - 1;
Field[x, y]:=0;
End;

Begin
ClrScr;
N := 0;
Write (‘ Введите ширину поля (от 1 до 20): ’);
ReadLn (MaxX);
Write (‘Введите высоту поля (от 1 до 20):’);
ReadLn(MaxY);
For x:=1 To MaxX Do
For y:=1 To MaxY Do Field[x,y]:=0;
ClrScr;
Move (1,1);
WriteLn (‘Решение не найдено…’);
End.

Посмотрите что нужно изменить.. Заранее спасибо. Жду ответа


 
Alien1769 ©   (2008-06-03 11:19) [23]

Тебе уже "настучали" на клаве:
1.убрать
> Uses
> CRT;

2.Заменить управление установки курсора
> GotoXY


 
Mystic ©   (2008-06-03 11:31) [24]

Говорилось уже: убрать CRT, ClrSrc. Переписать вывод без использования GotoXY.


 
Anatoly Podgoretsky ©   (2008-06-03 12:23) [25]


> Посмотрите что нужно изменить.. Заранее спасибо. Жду ответа

Вот только это

Uses
  CRT;

Заменить на
Uses
  хххCRT;

Где ххх это заменитель модуля под Виндоус, в Интернет должно быть несколько альтернативных модулей. Больше ничего в данно коде менять не надо. Простой поиск в Сети позволит это найти.


 
Vlad Oshin ©   (2008-06-03 12:35) [26]

Да просто gotoxy переписывается,
ClrScr не обязательно, gotoxy просто правильно делается, и пустые writeln
Алгоритм обхода сравнил с  алгоритмом Варнсдорфа (конь ходит на поле, с которого колво возможных ходов минимально). Скорости

uses
 Windows;

 Con: integer;

procedure GotoXY(X,Y:integer);
var
 Coord: TCoord;
begin
 Coord.x:=X;
 Coord.y:=Y;
 SetConsoleCursorPosition(Con,Coord);
end;

 Con := GetStdHandle(STD_OUTPUT_HANDLE);


 
Vlad Oshin ©   (2008-06-03 12:35) [27]

Удалено модератором


 
Vlad Oshin ©   (2008-06-03 12:35) [28]

Удалено модератором


 
boa_kaa (another comp)   (2008-06-03 12:57) [29]


> non1ka ©   (03.06.08 10:57) [22]
> Вылаживаю листинг программы на Turbo Pascale...

а ведь правильно сказал в общем-то... :)


 
non1ka ©   (2008-06-03 13:10) [30]

Так после замены CRT
У меня получилось
Uses
{$IFDEF WIN32}
{$APPTYPE CONSOLE}
{$ENDIF}
Var

GotoXY я меня не стал...
а что делать с операторами ввода и вывода writeln я не понял :(


 
@!!ex ©   (2008-06-03 13:14) [31]

> [30] non1ka ©   (03.06.08 13:10)

Спасибо, посмешил. :)))


 
non1ka ©   (2008-06-03 13:15) [32]

Пжалуйста всегда готов... я признаю Что я не черта не понял...

Я понимаю есть модуль CRT его нужно заменить.. как я не знаю...
Вам может это понятно мне нет...


 
@!!ex ©   (2008-06-03 13:16) [33]

{$IFDEF WIN32}
{$APPTYPE CONSOLE}
{$ENDIF}
Ставится в САМОМ НАЧАЛЕ проекта, перед всем остальным кодом.

Вы бы хоть соизволили почитать, что этот код делает.


 
Anatoly Podgoretsky ©   (2008-06-03 13:17) [34]

> non1ka  (03.06.2008 13:15:32)  [32]

хххCRT заменить на имя пользователя.


 
@!!ex ©   (2008-06-03 13:18) [35]

uses CRT - просто удаляется.


 
non1ka ©   (2008-06-03 13:19) [36]


> Вы бы хоть соизволили почитать, что этот код делает.

Как я предпологаю подключает библиотеки или модули delphi.. все что могу предположить!! я в верху написал что эти волшебные строки делают.. Мне сказали
> в рассказе смысла будет куча терминов, так же нуждающихся
> в рассказе об их смысле...


 
non1ka ©   (2008-06-03 13:20) [37]

{$IFDEF WIN32}
{$APPTYPE CONSOLE}
{$ENDIF}
Program HorseMoving;
Var
Field:  Array [1..20] of Array [1..20] of Integer;

Вот так??


 
Vlad Oshin ©   (2008-06-03 13:28) [38]

некогда ему читать,  эмо не читают


 
Vlad Oshin ©   (2008-06-03 13:28) [39]

Удалено модератором


 
Vlad Oshin ©   (2008-06-03 13:28) [40]

Удалено модератором


 
non1ka ©   (2008-06-03 13:29) [41]

Удалено модератором


 
non1ka ©   (2008-06-03 13:34) [42]

чувствую себя бревном :(


 
Vlad Oshin ©   (2008-06-03 13:48) [43]

ты списал пасовскую программку
тебе все написали (и даже функцию gotoxy)
ты сам хоть что-то сделал, здоровый ты мой
зы
ну не люблю я эмо и прочих .. альтернативных феЙ


 
Vlad Oshin ©   (2008-06-03 13:48) [44]

Удалено модератором


 
Vlad Oshin ©   (2008-06-03 13:48) [45]

Удалено модератором


 
@!!ex ©   (2008-06-03 14:28) [46]

> [37] non1ka ©   (03.06.08 13:20)

Вот так.
Объясняю.
{} - Это комментарий.
Если комментарий содержит знак $ в начале, это значит что это не простой комментарий, а код препроцессора.
Блок
{$IFDEF WIN32}
...
{$ENDIF}
выполняется только под виндой.
Препроцессор смотрит на этот код, и если ОС - не виндовс, то он этот код игнорирует, просто удаляет, если же винда, то обрабатывается команда:
{$APPTYPE CONSOLE}
Эта команда указывает, что приложение не простое, а консольное. С тем самым окошком черным, на котором работает Writeln/Readln


 
non1ka ©   (2008-06-03 15:06) [47]


> @!!ex

Спасибо за четкое объяснение... я понял...

> Vlad Oshin


Во первых объсните от куда вы знаете про феЙ???
Во вторых это было давно и не правда, а на тот момент просто интересно...
И зачем троить пост..???


 
non1ka ©   (2008-06-03 15:11) [48]


> @!!ex


> {$APPTYPE CONSOLE}

И это означает что производить каки либо изменения с операторами Writeln/Readln не нужно..??


 
non1ka ©   (2008-06-03 15:15) [49]

Все я понял что не нужно.....


> Vlad Oshin

Ты описал мне процедуру для алгоритма Варнсдорфа. Я про этот алгоритм перебора читал он напоминает впринципе мою задачу. Он так же является рекурсивным как я понимаю. вопрос в следующем заменить GotoXY на данный листинг??


 
Palladin ©   (2008-06-03 15:17) [50]


> Блок
> {$IFDEF WIN32}
> ...
> {$ENDIF}
> выполняется только под виндой.

компилируется только если задано Win32, выполнение тут ни причем...

...препроцессора, ни в одном продукте Паскалевского направления от Borland, нет..


> non1ka ©   (03.06.08 15:06) [47]

и чего"же ты понял?


 
Vlad Oshin ©   (2008-06-03 15:20) [51]

я описал процедуру
GOTOXY
, причем тут варнсдорф?


> Во первых ......

просто поискал в нете, не мог же ты только тут так здоровско отметится


 
Vlad Oshin ©   (2008-06-03 15:20) [52]

Удалено модератором


 
Vlad Oshin ©   (2008-06-03 15:20) [53]

Удалено модератором


 
non1ka ©   (2008-06-03 15:22) [54]


> Palladin

Про
Эти строки понятно...

> > {$IFDEF WIN32}
> > ...
> > {$ENDIF}


Это условие что программа должна выполняться на платформах Win32. Это понятно...

{$APPTYPE CONSOLE} Это означает что программа консольная.. т.е. Не оконный Win вариант а именно мною привычный варианткак в  Pascale.

Единственное на данный момент не понятно на счет процедуры GotoXY как одни говорят что ее нужно преобразовывать в отдельную процедуры другие говорят оставлять без изменения :(


 
non1ka ©   (2008-06-03 15:26) [55]


> Vlad Oshin

Я подумал ты показал типовое описание алгоритма..

Я не знал что именно под мой конкретный премер...

А на счет остального я не понимаю какую цель ты приследовал когда писал в поисковике мой ник :) Для чего!!??? я понимаю ты логичный человек.. тогда объясни мне ЗАЧЕМ?


 
Kostafey ©   (2008-06-03 15:28) [56]

> Во первых объсните от куда вы знаете про феЙ???

А никто не знает :)

Но вот эта штука компилится:

program Project2;

{$APPTYPE CONSOLE}

uses
 SysUtils;

Var
Field: Array [1..20] of Array [1..20] of Integer;
N: Integer;
MaxX, MaxY: Integer;
x, y: Integer;
Procedure WritePosition;
Var
X, y: Integer;
Begin
//ClrScr;
For y:=1 to MaxY do
For x:=1 to MaxX do
Begin
//GotoXY (x*4, y*2);
Write (Field[x, y]);
End;
End;

Procedure Move(x, y: Integer);
Begin
N := N+1;
Field [x,y] := N;
If N = MaxX * MaxY Then
Begin
WriteLN ("Anou ?aoaiea!!!");
WritePosition;
//ReadKey;
readln;
Halt;
End;
If (x+2<=MaxX) and (y+1<=MaxY) Then
If Field[x+2, y+1]=0 Then move (x+2, y+1);
If (x+1<=MaxX) and (y+2<=MaxY) Then
If Field[x+1, y+2]=0 Then move (x+1, y+2);
If (x-1>0) and (y+2<=MaxY) Then
If Field[x-1, y+2]=0 Then move (x-1, y+2);
If (x-2>0) and (y+1<=MaxY) Then
If Field[x-2, y+1]=0 Then move (x-2, y+1);
If (x-2>0) and (y-1>0) Then
If Field [x-2, y-1]=0 Then move (x-2, y-1);
If (x-1>0) and (y-2>0) Then
If Field [x-1, y-2]=0 Then move (x-1, y-2);
If (x+1<=MaxX) and (y-2>0) Then
If Field [x+1, y-2]=0 Then move (x+1, y-2);
If (x+2<=MaxX)and (y-1>0) Then
If Field[x+2, y-1] = 0 Then move (x+2, y-1);
N := N - 1;
Field[x, y]:=0;
End;

Begin
//ClrScr;
N := 0;
Write ("Aaaaeoa oe?eio iiey (io 1 ai 20): ");
ReadLn (MaxX);
Write ("Aaaaeoa aunioo iiey (io 1 ai 20): ");
ReadLn(MaxY);
For x:=1 To MaxX Do
For y:=1 To MaxY Do Field[x,y]:=0;
//ClrScr;
Move (1,1);
WriteLn ("?aoaiea ia iaeaaii...");
End.



 
non1ka ©   (2008-06-03 15:33) [57]


> Kostafey ©  

Ты за коментил. Очистку экрана, ожидание нажатия, и саму процедуру GotoXY;

Если не указывать шаг как можно проделать перебор...

Или просто "//" не значит комментарий... хотя да вроде мне написали что в делфи "{}" значек комментарий... а что тогда означает //....


 
Palladin ©   (2008-06-03 15:36) [58]

http://www.google.ru/search?hl=ru&q=%D0%BD%D0%B0%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5+%D0%BA%D0%BE%D0%BD%D1%81%D0%BE%D0%BB%D1%8C%D0%BD%D1%8B%D1%85+%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC+delphi&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=


 
non1ka ©   (2008-06-03 15:40) [59]


> Palladin

Все я понял.. Я достал уже... :)  Спасибо за помощь... Попытаюсь разобраться в остальном сам....


 
Renegat   (2008-06-03 15:40) [60]

WriteLn ("?aoaiea ia iaeaaii..."); // все символы строки после двойного фронт-слэша являются комментом


 
Kostafey ©   (2008-06-03 15:42) [61]

> [57] non1ka ©   (03.06.08 15:33)

Да, // - однострочный комментарий
{} - многострочный.

Вообще, сама задача кажется дикой.

Использование проприетарной интегрированной среды
для решения академической задачи - это...
имеет смысл разьве что для упрощения задачи
(в случее хорошего владения данной средой).

А для этой задачи FPC - самое оно! :)


 
non1ka ©   (2008-06-03 15:52) [62]


> Kostafey

... Ну просто наверное наш примитивный ум не потянул бы более сложные задачи ореентированные на среду Delphi. поэтому преподователь и дал задачу такого типа...

И на счет того кода, который ты выложил ты закоментил GotoXY, по какому правилу тогда будет осуществлятся перебор?


 
non1ka ©   (2008-06-03 15:55) [63]

все разобрался!!


 
Kostafey ©   (2008-06-03 15:56) [64]

> наш примитивный ум

Никогда так не говори и не думай :)


> по какому правилу тогда будет осуществлятся перебор?

Как и до того.
Цикл определяет последовательность перебора.

gotoXY лишь определяет положение курсора на экране
перед выводом.
Соответсвенно форматировать вывод нужно будет иначе.


 
non1ka ©   (2008-06-03 16:01) [65]

вот эта функция написана для позиционирования курсора

procedure GotoXY(X, Y : integer);
begin
Coord.X := X; Coord.Y := Y;
SetConsoleCursorPosition(ConHandle, Coord);
end;

а это Con := GetStdHandle(STD_OUTPUT_HANDLE); консольный вывод.... впринципе помойму не нужен


 
Kostafey ©   (2008-06-03 16:05) [66]

Ты про это?
http://forum.tsure.ru/lofiversion/index.php/t23712.html

Так, я убежал...


 
non1ka ©   (2008-06-03 16:06) [67]


> Kostafey


> Никогда так не говори и не думай :)

Просто мне самому стыдно. Не лежит у меня душа к этому. Не люблю и все. Каждый год новый язык. Сначала ассемблер начали только втягиваться, тут сразу на следующий год с++, Потом паскаль, Вот теперь делфи. А мне некогда разбираться я работаю в другом городе и вообще я понимаю это не оправдание, Но когда стоит выбор чем заниматься после работы (доделать работу, или занятся учебой) приходится выбирать работу. А свещенные выходные и те иногда проводиш в работе :( и нет времени даже с друзьями увидется..

Ладно я себя оправдал хотя бы в своих глазах. И это мою совесть еще на недельку приглоушит :)


 
Anatoly Podgoretsky ©   (2008-06-03 16:19) [68]

За это время, уже можно было сто раз скачать CRT модуль для Виндоус, даже на самом низкоскоростном модеме и вся работа свелась бы к замене одной строчки с CRT


 
non1ka ©   (2008-06-03 16:32) [69]


> Anatoly Podgoretsky

Это задание выдали неделю назад!!! :)


 
Anatoly Podgoretsky ©   (2008-06-03 16:39) [70]

> non1ka  (03.06.2008 16:32:09)  [69]

А на поиск нужно несколько секунд и чуть больше, чем этот мини модуль скачать.


 
ketmar ©   (2008-06-03 16:53) [71]

>[67] non1ka © (2008-06-03 16:06:00)
>Но когда стоит выбор чем заниматься после работы (доделать работу

нет. уволиться.

---
Understanding is not required. Only obedience.


 
non1ka ©   (2008-06-03 17:36) [72]


> ketmar

Ага это всегда так решение всех проблем это забить :)
Я вот пытался решить одну проблему вывел половину участников форума из себя и почувствовал себя безумно глупым!!! Весь реультат :)
Но в целом решил :)


 
Vlad Oshin ©   (2008-06-03 17:43) [73]

ладно, лови

rogram HorseMoving;
{$APPTYPE CONSOLE}
uses
 Windows;
Var
 Field: Array [1..20] of Array [1..20] of Integer;
 N: Integer;
 MaxX, MaxY: Integer;
 x, y: Integer;
 Con: integer;

procedure GotoXY(X,Y:integer);
var
 Coord: TCoord;
begin
 Coord.x:=X;
 Coord.y:=Y;
 SetConsoleCursorPosition(Con,Coord);
end;

Procedure WritePosition;
Var
 X, y: Integer;
Begin
 For y:=1 to MaxY do
  For x:=1 to MaxX do
  Begin
    GotoXY (x*4, y*2);
    Write (Field[x, y]);
  End;
End;

Procedure Move(x, y: Integer);
Begin
 N := N+1;
 Field [x,y] := N;
 If N = MaxX * MaxY
  Then Begin
         GotoXY(3,3);
         WritePosition;
         writeln;
         WriteLN (" Есть Решение!!!");
         Readln;
         Halt;
       End;
 If (x+2<=MaxX) and (y+1<=MaxY)
  Then If Field[x+2, y+1]=0
        Then move (x+2, y+1);
 If (x+1<=MaxX) and (y+2<=MaxY)
  Then If Field[x+1, y+2]=0
        Then move (x+1, y+2);
 If (x-1>0) and (y+2<=MaxY)
  Then If Field[x-1, y+2]=0
        Then move (x-1, y+2);
 If (x-2>0) and (y+1<=MaxY)
  Then If Field[x-2, y+1]=0
        Then move (x-2, y+1);
 If (x-2>0) and (y-1>0)
  Then If Field [x-2, y-1]=0
        Then move (x-2, y-1);
 If (x-1>0) and (y-2>0)
  Then If Field [x-1, y-2]=0
        Then move (x-1, y-2);
 If (x+1<=MaxX) and (y-2>0)
  Then If Field [x+1, y-2]=0
        Then move (x+1, y-2);
 If (x+2<=MaxX)and (y-1>0)
  Then If Field[x+2, y-1] = 0
        Then move (x+2, y-1);
 N := N - 1;
 Field[x, y]:=0;
End;

Begin
 Con := GetStdHandle(STD_OUTPUT_HANDLE);
 N := 0;
 Write ("Введите высоту поля (от 1 до 20):");
 ReadLn (MaxX);
 Write ("Введите высоту поля (от 1 до 20):");
 ReadLn(MaxY);
 For x:=1 To MaxX Do
  For y:=1 To MaxY Do Field[x,y]:=0;
 Move (1,1);
 GotoXY(3,3);
 WriteLn ("Решение не найдено");
 readln;
End.


 
Vlad Oshin ©   (2008-06-03 17:43) [74]

Удалено модератором


 
Vlad Oshin ©   (2008-06-03 17:43) [75]

Удалено модератором


 
non1ka ©   (2008-06-03 17:50) [76]

Удалено модератором
Примечание: сорри, удалено по ошибке


 
non1ka ©   (2008-06-03 17:56) [77]


> Vlad Oshin

Спасибо огромное...
Но в целом я уже разобрался...

Теперь у меня опять появились вопросы...

Then Begin
        GotoXY(3,3);
        WritePosition;
        writeln;
        WriteLN (" Есть Решение!!!");
        Readln;
        Halt;
      End;

Что означает GotoXY (3,3) мы начинаем движение четко с клетки 3 по горизонтали и 3 по вертикале??


 
non1ka ©   (2008-06-03 17:57) [78]

Тоесть не правильно выразился при определенных условия тех которые нас неудовлетворяют мы возвращаемся в эту клетку??


 
non1ka ©   (2008-06-03 17:58) [79]

блин все понял


 
non1ka ©   (2008-06-03 18:05) [80]

Ладно все не буду больше раздражать!! вас пойду домой попробую сделать как я думаю!! и попробую листинг написанный Человеком ненавидящим альтернативные культуры :)... А результатах сообщу поздне...

Всем огромное спасибо за ваше терпение :)... До встречи


 
ketmar ©   (2008-06-03 18:19) [81]

>[72] non1ka © (2008-06-03 17:36:00)
>Ага это всегда так решение всех проблем это забить :)

не «забить», а «не участвовать в глупостях». что это за работа, которую надо доделывать после рабочего дня? значит, или ты не справляешься (тогда гнать тебя), или начальство тупое (тогда всё равно уходить).

---
All Your Base Are Belong to Us


 
@!!ex ©   (2008-06-03 18:35) [82]

> [50] Palladin ©   (03.06.08 15:17)
>
> > Блок
> > {$IFDEF WIN32}
> > ...
> > {$ENDIF}
> > выполняется только под виндой.
>
> компилируется только если задано Win32, выполнение тут ни
> причем...

Слушай, если ты умеешь такие вещи объяснять доступным языком людям, ничего не знающим в программировании - вперед. 50 раз бы успел объяснить, но что-то не спешил.


> ...препроцессора, ни в одном продукте Паскалевского направления
> от Borland, нет..

спорим? :))
Я выиграю, правда ты прав, в данном случае это не препроцессор обрабатывает.

>
> ...препроцессора, ни в одном продукте Паскалевского направления
> от Borland, нет..


 
Vlad Oshin ©   (2008-06-04 09:15) [83]


> А результатах сообщу поздне...

за что


 
Vlad Oshin ©   (2008-06-04 09:15) [84]


> А результатах сообщу поздне...

за что


 
Vlad Oshin ©   (2008-06-04 09:15) [85]


> А результатах сообщу поздне...

за что


 
non1ka ©   (2008-06-04 09:30) [86]


> ketmar


> ты не справляешься (тогда гнать тебя),

Такое ощущение, что комментарий оставил человек не когда в жизни не работавший :) или тот, кто работает в отделе, не приносящей прибыль организации.
Чем больше ты сделаешь работы и чем больше принесешь прибыли в компанию тем больше и будет твоя з/п… И поэтому приходится дополнительно работать дома..  Всю отчетность вести… А на работе заниматься клиентами…


> за что


Что за что???....


 
Узурапа   (2008-06-04 09:36) [87]


> Чем больше ты сделаешь работы и чем больше принесешь прибыли
> в компанию тем больше и будет твоя з/п… И поэтому приходится
> дополнительно работать дома..  Всю отчетность вести… А на
> работе заниматься клиентами…


феерическая чушь


 
non1ka ©   (2008-06-04 09:45) [88]


> феерическая чушь

Ну ты знаешь когда человек сидит на голом окладе. У него нет огромного желания вкалывать.. Он тупо отрабатывает свои деньги.. А когда его стимулируют процентами... Это уже другой разговор...

Политика Директора ясна хочешь зарабатывать приноси прибыль... Не хочеш вкалывать получай копейки!!!


 
Anatoly Podgoretsky ©   (2008-06-04 09:51) [89]

> non1ka  (04.06.2008 9:30:26)  [86]

> Чем больше ты сделаешь работы и чем больше принесешь прибыли в компанию тем больше и будет твоя з/п…

Шутишь, народ интересуется - где такие компании?


 
non1ka ©   (2008-06-04 09:54) [90]


> Шутишь, народ интересуется - где такие компании?

Блин ребят вы что???

Половина организаций так работает!!! Зарплата белая 5 тысяч.. с этого платится налог и пенсионные отчистления.. оклад еще 5 тысяч его передают в конверте.. А потом по результам месечной работы строится отчет по всем позициям вычисляется процентная ставка и так же в конверете передается :(


 
Anatoly Podgoretsky ©   (2008-06-04 09:58) [91]

> non1ka  (04.06.2008 9:54:30)  [90]

Это не организация - это какая то мафиозная структура.
И смешно слышать, что в подобной шаражке кто то еще будет и доплачивать, должен радоваться, что вообще платят.


 
non1ka ©   (2008-06-04 10:07) [92]


> Anatoly Podgoretsky

.... Блин ты наверное точно с москвы :) У нас пол города так работает... Все все прекрасно знают, и даже в вакансиях пишут на сайтах З/п белая :)


 
Kostafey ©   (2008-06-04 11:27) [93]

> У нас пол города так работает...

Нн-нда. Если не полгорода, то многие коммерческие организации
точно. Да и в Москве такое встречатся.

Единственный путь - повышать квалификацию и искать
другую работу.


 
non1ka ©   (2008-06-04 11:37) [94]


> Единственный путь - повышать квалификацию и искать
> другую работу.

Для повышения квалификации я и устроился в эту организацию. так как у меня не было на то время опыта работы вообще :(
Я уже даже повесил нос и смерился с данным. Но недавно поступило предложение от директора на должность начальника отдела. На все про все он мне дал год (так как у меня нет еще диплома о высшем образовании я на 4ом курсе). Вот поэтому и приходится вкалывать. Нагружают функционалом, а опыта нехватает поэтому и приходится тратить личное время... :(


 
ketmar ©   (2008-06-04 15:25) [95]

Удалено модератором


 
Interior   (2008-06-04 16:17) [96]


> non1ka ©   (04.06.08 09:54) [90]
> > Шутишь, народ интересуется - где такие компании?Блин ребят
> вы что???Половина организаций так работает!!! Зарплата белая
> 5 тысяч.. с этого платится налог и пенсионные отчистления.
> . оклад еще 5 тысяч его передают в конверте.. А потом по
> результам месечной работы строится отчет по всем позициям
> вычисляется процентная ставка и так же в конверете передается
> :(

Ты бы не кричал так громко о том, о чем лучше не говорить вслух.

Тсссс


 
Virgo_Style ©   (2008-06-04 16:40) [97]

ketmar ©   (04.06.08 15:25) [95]
вывод о том, какие там сотрудники, можешь сделать сам.


О том, что бывает с такими сотрудниками, можно посмотреть кино:
http://www.youtube.com/v/jlxSUuGB2Do&hl=en


 
Тын-Дын   (2008-06-04 16:45) [98]

Удалено модератором


 
Palladin ©   (2008-06-04 16:52) [99]


> Слушай, если ты умеешь такие вещи объяснять доступным языком
> людям, ничего не знающим в программировании - вперед. 50
> раз бы успел объяснить, но что-то не спешил.

боже ты мой, я лишь поправил, уж прости за буквоедство...
я не вижу вообще никакого смысла объяснять, что же эти строчки означают...


> спорим? :))

эээ... то есть ты утверждаешь, что он (препроцессор) есть? хотя бы в одном продукте из обозначенной мною категории... о как...


 
@!!ex ©   (2008-06-04 18:05) [100]

> эээ... то есть ты утверждаешь, что он (препроцессор) есть?
> хотя бы в одном продукте из обозначенной мною категории...
> о как...

У меня установлена Delphi и Deex.
Delphi - Это что? Это продует Борланда Паскалевого направления.
Deex - Это что? Это препроцессор.

Вывод у меня есть "продукт Паскалевского направления от Borland" в ктором есть препроцессор.


 
Palladin ©   (2008-06-04 18:07) [101]

Вывод: у тебя есть "продукт Паскалевского направления от Borland" для которого есть препроцессор. ку?


 
@!!ex ©   (2008-06-04 18:46) [102]

> [101] Palladin ©   (04.06.08 18:07)

Это уже опять буквоедство. ;)


 
Palladin ©   (2008-06-04 18:52) [103]

да почему... тут ужо не буквоедство, а здравый смысл. конечно существуют некие продукты, которые берут на входе нечто и отдают на выходе компилируемое... любой обфускатор можно назвать препроцессором... одноко он им не станет...


 
Kostafey ©   (2008-06-05 11:33) [104]

> [97] Virgo_Style ©   (04.06.08 16:40)
> ketmar ©   (04.06.08 15:25) [95]
> вывод о том, какие там сотрудники, можешь сделать сам.
>
> О том, что бывает с такими сотрудниками, можно посмотреть
> кино:
> http://www.youtube.com/v/jlxSUuGB2Do&hl=en

Жесть.
Хотя, это по-нашему! :)


 
non1ka ©   (2008-06-05 11:40) [105]


> О том, что бывает с такими сотрудниками, можно посмотреть
> кино:
> http://www.youtube.com/v/jlxSUuGB2Do&hl=en

Жесть...

Нет у меня кабинет в 40 квадратных метров и там только я и мой начальник :)



Страницы: 1 2 3 вся ветка

Форум: "Прочее";
Текущий архив: 2008.07.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.74 MB
Время: 0.047 c
2-1213953724
Виктор
2008-06-20 13:22
2008.07.20
Запись графики в базу MS SQL


1-1195408460
ice-hammer
2007-11-18 20:54
2008.07.20
Как перетащить круг в Canvas е


2-1213713341
Alex_C
2008-06-17 18:35
2008.07.20
Кол-во Auto-create Forms


15-1212612419
Германн
2008-06-05 00:46
2008.07.20
Что-то в последние минут 10-15 жутко тормозит форум.


2-1213696082
checkmate-maker
2008-06-17 13:48
2008.07.20
Мерцание tImage





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский