Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 28.11.2009
Сообщений: 85
1

Шахматную доску будем представлять

03.04.2010, 22:36. Показов 2123. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите решить еще одну очень трудную задачу:
Шахматную доску будем представлять в виде квадратного символьного массива размера 8x8. Даны натуральные числа v1 и g1, указывающие номера вертикали (при счете слева направо) и горизонтали (при счете снизу вверх) для поля, на котором стоит белая шахматная фигура, и числа v2 и g2 – указывающие соответствующие координаты второй черной фигуры (1v≤1≤8, 1g≤1≤8, 1≤v2≤8, 1≤g2е≤8). Определить поля (отметить их символом «+»), на которые может пойти первая фигура, не попав под удар второй фигуры. Рассмотреть следующие варианты сочетаний первой и второй фигур:конь и слон
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.04.2010, 22:36
Ответы с готовыми решениями:

Доделать шахматную доску
Всем привет!Нужна помошь в задание! «шахматная» доска, содержащая 25 параллелограммов и...

Нарисовать шахматную доску 6*6 на весь экран
Помогите написать программу: Нужно нарисовать шахматную доску 6*6 ( НА ВЕСЬ ЭКРАН!!! ) ...

Нарисовать в графическом режиме шахматную доску
Нужно нарисовать в графическом режиме шахматную доску. п.с не по теме, будет ли ваш сайт...

Нарисовать 64х клетную шахматную доску
Привет всем. вот столкнулся с проблемой, как нарисовать 64х клетную доску. есть код, но он...

2
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
04.04.2010, 10:27 2
Лучший ответ Сообщение было отмечено SPORTsMEN000 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
uses crt;
const n=8;
function HodK(a,b,f,g:integer):boolean;
begin
HodK:=((abs(a-f)=1)and(abs(b-g)=2))or((abs(a-f)=2)and(abs(b-g)=1))
      and((a<>f)or(b<>g)){все ходы коня}
end;
function HodB(a,b,f,g:integer):boolean;
begin
HodB:=(abs(a-f)=abs(b-g)) and((a<>f)or(b<>g)){все ходы слона}
end;
 
var d:array[1..n,1..n] of char;
    i,j,v1,g1,v2,g2:integer;
begin
clrscr;
textcolor(15);
repeat
writeln('Введите координаты белого коня от 1 до 8:');
readln(v1,g1);
until(v1 in [1..8])and(g1 in [1..8]);
repeat
writeln('Введите координаты черного слона от 1 до 8, отличные от координат коня:');
readln(v2,g2);
until(v2 in [1..8])and(g2 in [1..8])and((v1<>v2)or(g1<>g2));
for i:=1 to n do
for j:=1 to n do
if(n-i+1=g1)and(j=v1) then d[i,j]:='K'{поле где конь}
{поле где слон, если оно не бъется конем}
else if((n-i+1=g2)and(j=v2))and not HodK(v1,g1,v2,g2) then d[i,j]:='B'
{поле куда может пойти конь без боя}
else if HodK(v1,g1,j,n-i+1)and not HodB(v2,g2,j,n-i+1)and((j<>v2)or(n-i+1<>g2)) then d[i,j]:='+'
{поле где стоит слон под боем}
else if HodK(v1,g1,j,n-i+1)and((j=v2)and(n-i+1=g2)) then d[i,j]:='X'
{прочие клетки}
else d[i,j]:=#219;
{вывод массива}
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    if((i+j) mod 2=0)then{белые клетки}
      begin
       textcolor(15);
       write(d[i,j]);
      end
    else
     begin
      textcolor(6); {коричневые клетки}
      write(d[i,j]);
     end;
   end;
  writeln;
 end;
readln
end.
1
1 / 1 / 0
Регистрация: 28.11.2009
Сообщений: 85
04.04.2010, 12:08  [ТС] 3
Спасибо, Вам, огромное!
0
04.04.2010, 12:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.04.2010, 12:08
Помогаю со студенческими работами здесь

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

Получить на экране шахматную доску 8х8 (модуль CRT)
Получить на екране шахматную доску 8х8 с размером клеток n знакомест. Заранее спасибо.

Нарисовать шахматную доску, пометив крестиками все поля, которые «бъет» конь
Программа. Даны две литеры—латинская буква (от а до h) и цифра (от 1 до 8), например, а2 или g5....

Шахматную доску представим в виде квадратной матрицы порядка 8. Даны натуральные числа m и n, которые определяют место коня
Шахматную доску представим в виде квадратной матрицы порядка 8. Даны натуральные числа m и n...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru