Презентация к уроку информатики 9 класс Автор: Юдин Андрей Борисович МКОУ Плесская СОШ PascalABC 8 7 6 5 4 3 2 1 «Шахматные» задачи 1 2 3 4 5 6 7 8 Задачи на сложные условия
1 Задача 1. Даны координаты шахматной доски x и y, (целые числа, лежащие в диапазоне от 1-8). Учитывая, что левое нижнее поле доски (1;1) является черным, проверить, какого цвета поле координаты которого введены с клавиатуры.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 2 7+3=10 Четная 5+1=6 Четная 8+4=12 Четная
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 3 4+1=5 Не четная 8+5=13 Не четная
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.
5 Задача 2. Даны координаты двух различных полей шахматной доски x и y и x1 и y1, (целые числа, лежащие в диапазоне от 1-8). Проверить, попадет ли ладья за один ход с одного поля на другое. ?
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 6
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.
8 Задача 3. Даны координаты двух различных полей шахматной доски x и y и x1 и y1, (целые числа, лежащие в диапазоне от 1-8). Проверить, попадет ли слон за один ход с одного поля на другое. ?
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 9
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 10 7-3=4 5-1=4
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.
? 12 Задача 4. Даны координаты двух различных полей шахматной доски x и y и x1 и y1, (целые числа, лежащие в диапазоне от 1-8). Проверить, попадет ли ферзь за один ход с одного поля на другое.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 13
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.
? 15 Задача 5. Даны координаты двух различных полей шахматной доски x и y и x1 и y1, (целые числа, лежащие в диапазоне от 1-8). Проверить, попадет ли король за один ход с одного поля на другое.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 16 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
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.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 18 3,3 4,1 3,1 5,1 4,3 5,3 3,2 5,2 4,2 Тест
? 19 Задача 6. Даны координаты двух различных полей шахматной доски x и y и x1 и y1, (целые числа, лежащие в диапазоне от 1-8). Проверить, попадет ли конь за один ход с одного поля на другое.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 20
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 21 x1=x-2 and y1=y+1 x1=x-1 and y1=y+2 x1=x+1 and y1=y+2 x1=x+2 and y1=y+1 x1=x-2 and y1=y-1 x1=x-1 and y1=y-2 x1=x+1 and y1=y-2 x1=x+2 and y1=y-1
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.
8 7 6 5 4 3 2 1 1 2 3 4 5 6 7 8 23 4,6 5,7 7,7 8,6 4,4 5,3 7,3 8,4 6,5 Тест
25 Список литературы: 1. Основы программирования. И. Г. Семакин, А. П. Шестаков Издательство: Высшая школа, 2001 2. 100 задач по программированию. В. А. Дагене, Г. К. Григас, К. Ф. Аугутис Издательство: Просвещение 1993 3. Паскаль для школьников, Подготовка к ЕГЭ, Кашаев С.М., Шерстнева Л.В., 2011. 4. Книга начинающего шахматиста. Левенфиш Г. Я. Издательство: Москва. «Физкультура и спорт», 1957 г.