Advertisement
Jater

Elena_chess

Nov 27th, 2012
179
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.32 KB | None | 0 0
  1. program shahmaty;
  2. var a,b,c,d,e,f:integer;
  3.     z:boolean;{z - логическая переменная, если true, то по условию if определено, что фигуры не попадут друг на друга}
  4. begin
  5. repeat
  6.     write('raspolojenie beloy figury (ne bolee 8 kletok): ');
  7.     readln(a,b);
  8.     write('raspolojenie chernoy figury (ne bolee 8 kletok): ');
  9.     readln(c,d);
  10.     write('pole, na kotoroe prihodit belaya figura (ne bolee 8 kletok): ');
  11.     readln(e,f);
  12.     if(a>8)or(a<1)or(b>8)or(b<1)or(c>8)or(c<1)or(d>8)or(d<1)or(e>8)or(e<1)or(f>8)or(f<1) then
  13.         writeln('Ne korrektnye chisla: vvedite koordinaty [1;8]');
  14. until((a<8)or(a>1)or(b<8)or(b>1)or(c<8)or(c>1)or(d<8)or(d>1)or(e<8)or(e>1)or(f<8)or(f>1));
  15. if (((a=e)or(b=f)) {по горизонтали или по вертикали} or (abs(a-e)=abs(b-f))) then
  16.     z:=true;{или по диагонали, в приципе пойти может}
  17. {если поле бьётся конем, не может}
  18. if ((abs(c-e)=1)and(abs(d-f)=2))or((abs(c-e)=2)and(abs(d-f)=1)) then
  19.     z:=false;
  20. {если в ходе работы проги z поменяло значение только на 1, то фигуры не попали в одну конечную точку}
  21. if z then
  22.     write('Proshel,ne popav na chernyu')
  23. else
  24.     write('Ne proshel');
  25. readln
  26. End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement