- •Экспериментальный раздел работы
- •1. Найти первый максимальный элемент массива и его индексы.
- •5. В массиве а размерностью n*m к элементам четных столбцов прибавить элемент первого столбца соответствующей строки.
- •7. Составить программу, запрашивающую координаты ферзя на шахматной доске и показывающую поля доски, находящиеся под боем.
7. Составить программу, запрашивающую координаты ферзя на шахматной доске и показывающую поля доски, находящиеся под боем.
Заметим, что шахматную доску удобно представить в виде двумерного массива размером 8*8. Координаты ферзя определяются двумя числами (номер строки и номер столбца), но в шахматах принято вводить букву и число. Буква отвечает за номер строки, а число — за номер столбца. Поэтому не будем отступать от традиций и введем координаты именно таким образом. В программе сделаем проверку корректности ввода и если все правильно, то переведем букву в соответствующее ей число ('а' — 1, 'b' — 2, 'с' — 3,'d' — 4, ‘e’ — 5, ‘f’ — 6, 'g'-7,'h'- 8 ). Для решения задачи используем ряд свойств шахматной доски. Все диагонали доски делятся на восходящие и нисходящие.
для клеток любой восходящей диагонали сумма номера
строки и номера столбца постоянна (i+j=Const); для клеток любой нисходящей диагонали разность номера
строки и номера столбца постоянна (i-j=Const). Проверьте, что для восходящих диагоналей сумма индексов изменяется от 2 до 16, а для нисходящих — разность от -7 до 7.
Основная программа состоит из одной строки — вызов процедуры Solve. Измените решение так, чтобы фиксировались клетки доски, находящиеся под боем хотя бы одной из фигур — ферзя и ладьи.
ЗАДАНИЯ ДЛЯ САМОСТОЯТЕЛЬНОЙ РАБОТЫ
1. Дан двумерный массив. Найти сумму и количество элементов в каждом столбце:
кратных k1 или k2:
попадающих в интервал от А до B;
являющихся простыми числами;
положительных и лежащих выше главной диагонали.
2. Дан двумерный массив. Найти:
сумму элементов в строках с k1 no k2;
номера всех максимальных элементов;
номера первых отрицательных элементов каждой строки (столбца);
номера последних отрицательных элементов каждой строки (столбца);
количество элементов в каждой строке, больших (меньших) среднего арифметического элементов данной строки;
номера первой пары неравных элементов в каждой строке.
3. Даны два квадратных массива А и В. Вывести тот из них, у которого след меньше (сумма элементов главной диагонали).
4. Дан двумерный массив. Определить:
есть ли в данном массиве отрицательный элемент;
есть ли два одинаковых элемента;
12. Дан двумерный массив. Определить:
есть ли в данном массиве строка, в которой ровно два отрицательных элемента;
есть ли в данном массиве столбец, в котором имеются одинаковые элементы;
есть ли в данном массиве строка, в которой имеется два максимальных элемента всего массива;
есть ли в данном массиве столбец, в котором равное количество положительных и отрицательных элементов;
есть ли в данном массиве строка, содержащая больше положительных элементов, чем отрицательных.
13. Сформировать двумерные массивы по следующим правилам:
Поскольку сумма элементов магического квадрата равна l+2+3+...-+N2=N2*(N2+l )/2, то соответствующие суммы равны N*(N2+l)/2. Так, при ЛГ=5, в каждой строке, столбце и на главных диагоналях сумма элементов равна 5*(52+1)/2=65. 15. Дан двумерный массив (N*N). Зеркально отобразить его элементы относительно: горизонтальной оси симметрии; вертикальной оси симметрии; главной диагонали; побочной диагонали.
14. Определить, является ли массив (N*N) магическим квадратом (значения элементов массива из интервала от 1 до N*N), то есть суммы по всем горизонталям, вертикалям и двум диагоналям должны совпадать.
Примеры магических квадратов.
Работа с окнами, В Турбо Паскале есть возможность работы с несколькими окнами (режим Window главного меню). Окно — ограниченная область экрана. Его размеры и положение на экране можно изменять. Программа, а она хранится на диске как файл с определенным именем, размещается в определенном окне. Активным в текущий момент является только одно окно, в нем находится курсор.
Команда
|
Функциональная клавиша |
Назначение
|
||
Tile |
|
|
|
Последовательное размещение окон |
Cascade |
|
|
|
Каскадное размещение окон |
Close All |
|
|
|
Закрытие всех окон |
Size/Move
|
Ctrl
|
+
|
F5
|
Изменение размера, перемещение окна. При выполнении команды изменяется цвет рамки окна. Для изменения размера окна используется комбинация клавиш Shift+↑, ↓, ←,→. Для перемещения — ↑, ↓, ←,→. Для завершения работы с окном следует нажать клавишу Enter. Цвет рамки окна изменится на первоначальный |
Zoom
|
|
|
F5
|
Размеры активного окна устанавливаются равными полному экрану |
Next |
|
|
F6 |
Переход к следующему окну |
Previos |
Shift |
+ |
F6 |
Переход к предыдущему окну |
Close |
Alt |
+ |
F3 |
Закрытие активного окна |
List |
|
|
|
Просмотр списка открытых окон |
В начало.