255.61K
Categories: programmingprogramming informaticsinformatics

Шахматные задачи. Задачи на сложные условия

1.

8
7
6
5
4
3
2
1
1 2 3 4 5 6 7
8
Презентация к уроку информатики
9 класс
Автор: Юдин Андрей Борисович
МКОУ Плесская СОШ

2.

1
Задача 1.
Даны координаты шахматной доски x и y,
(целые числа, лежащие в диапазоне от 18). Учитывая, что левое нижнее поле
доски (1;1) является черным, проверить,
какого цвета поле координаты которого
введены с клавиатуры.

3.

2
8
7
6
5
4
3
2
1
8+4=12
7+3=10
Четная
Четная
5+1=6
Четная
1 2 3 4 5 6 7
8

4.

3
8
8+5=13
7
Не
четная
6
5 4+1=5
4
Не
четная
3
2
1
1 2 3 4 5 6 7 8

5.

4
Program n1;
Uses Crt;
var x,y:Integer;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
if ((x+y) mod 2 =0) then writeln ('Черная')
else writeln ('Белая');
end.

6.

5
Задача 2.
Даны координаты двух различных полей
шахматной доски x и y и x1 и y1, (целые
числа, лежащие в диапазоне от 1-8).
Проверить, попадет ли ладья за один ход
с одного поля на другое.
?

7.

6
8
7
6
5
4
3
2
1
1 2 3 4 5 6 7
8

8.

7
Program n2;
Uses Crt;
var x,y,x1,y1:Integer;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
write('Введи Х1 ');Readln(x1);
write('Введи Y1 ');Readln(y1);
if (x=x1) or (y=y1) then writeln ('Попадает')
else writeln ('Не попадает');
end.

9.

8
Задача 3.
Даны координаты двух различных полей
шахматной доски x и y и x1 и y1, (целые
числа, лежащие в диапазоне от 1-8).
Проверить, попадет ли слон за один ход
с одного поля на другое.
?

10.

9
8
7
6
5
4
3
2
1
1 2 3 4 5 6 7
8

11.

10
8
7
6
5
4
3
2
1
5-1=4
7-3=4
1 2 3 4 5 6 7
8

12.

11
Program n1;
Uses Crt;
var x,y,x1,y1:Integer;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
write('Введи Х1 ');Readln(x1);
write('Введи Y1 ');Readln(y1);
if abs(x-x1)=abs(y-y1)then
writeln ('Попадает')
else
writeln ('Не попадает');
end.

13.

12
Задача 4.
Даны координаты двух различных полей
шахматной доски x и y и x1 и y1, (целые
числа, лежащие в диапазоне от 1-8).
Проверить, попадет ли ферзь за один ход
с одного поля на другое.
?

14.

13
8
7
6
5
4
3
2
1
1 2 3 4 5 6 7
8

15.

14
Program n4;
Uses Crt;
var x,y,x1,y1:Integer;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
write('Введи Х1 ');Readln(x1);
write('Введи Y1 ');Readln(y1);
if ((abs(x-x1)=abs(y-y1)) or (x=x1)or (y=y1))
then
writeln ('Попадает')
else
writeln ('Не попадает');
end.

16.

15
Задача 5.
Даны координаты двух различных полей
шахматной доски x и y и x1 и y1, (целые
числа, лежащие в диапазоне от 1-8).
Проверить, попадет ли король за один
ход с одного поля на другое.
?

17.

16
8
7
6
5
4
3
2
1
x1=x-1 and y1=y
x1=x-1 and y1=y+1
x1=x and y1=y+1
x1=x+1 and y1=y+1
x1=x+1 and y1=y
x1=x+1 and y1=y-1
x1=x and y1=y-1
x1=x-1 and y1=y-1
1 2 3 4 5 6 7
8

18.

17
var x,y,x1,y1:Integer;
a,b:boolean;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
write('Введи Х1 ');Readln(x1);
write('Введи Y1 ');Readln(y1);
a:=(x1=x-1) and (y1=y) or (x1=x-1) and
(y1=y+1) or (x1=x) and (y1=y+1) or (x1=x+1)
and (y1=y+1);
b:=(x1=x+1) and (y1=y) or (x1=x+1) and
(y1=y-1) or (x1=x) and (y1=y-1) or (x1=x-1)
and (y1=y-1);
if a or b then writeln ('Попадает')
else writeln ('Не попадает');
end.

19.

18
8
7
6
5
4
3
2
1
Тест
3,3 4,3
5,3
3,2 4,2
5,2
3,1 4,1
5,1
1 2 3 4 5 6 7
8

20.

19
Задача 6.
Даны координаты двух различных полей
шахматной доски x и y и x1 и y1, (целые
числа, лежащие в диапазоне от 1-8).
Проверить, попадет ли конь за один ход
с одного поля на другое.
?

21.

20
8
7
6
5
4
3
2
1
1 2 3 4 5 6 7
8

22.

21
x1=x-2
8
x1=x-1
7
x1=x+1
x1=x+2
and
and
and
and
y1=y+1
y1=y+2
y1=y+2
y1=y+1
6
x1=x-2
5 and y1=y-1
x1=x-1 and y1=y-2
4 and y1=y-2
x1=x+1
x1=x+2
3 and y1=y-1
2
1
1 2 3 4 5 6 7 8

23.

22
var x,y,x1,y1:Integer;
a,b:boolean;
begin
ClrScr;
write('Введи Х ');Readln(x);
write('Введи Y ');Readln(y);
write('Введи Х1 ');Readln(x1);
write('Введи Y1 ');Readln(y1);
a:=(x1=x-2) and (y1=y+1) or (x1=x-1) and
(y1=y+2) or (x1=x+1) and (y1=y+2) or (x1=x+2)
and (y1=y+1);
b:=(x1=x-2) and (y1=y-1) or (x1=x-1) and
(y1=y-2) or (x1=x+1) and (y1=y-2) or (x1=x+2)
and (y1=y-1);
if a or b then writeln ('Попадает')
else writeln ('Не попадает');
end.

24.

23
8
7
6
5
4
3
2
1
5,7
7,7
8,6
4,6
6,5
4,4
Тест
8,4
5,3
7,3
1 2 3 4 5 6 7
8

25.

25
Список литературы:
1. Основы программирования. И. Г. Семакин, А. П. Шестаков
Издательство: Высшая школа, 2001
2. 100 задач по программированию. В. А. Дагене, Г. К. Григас,
К. Ф. Аугутис Издательство: Просвещение 1993
3. Паскаль для школьников, Подготовка к ЕГЭ, Кашаев С.М.,
Шерстнева Л.В., 2011.
4. Книга начинающего шахматиста. Левенфиш Г. Я.
Издательство: Москва. «Физкультура и спорт», 1957 г.
English     Русский Rules