Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Лабораторна робота №7

Завдання

Дана квадратна матриця невідомого розміру.

Отримати матрицю в якій змінені місцями половини основної та побічної діагоналей які розташовані справа від центру.

Запити

Приклад 1:

matrix(1, [
    [1, 2, 3, 4, 5],
    [6, 7, 8, 9, 1],
    [2, 3, 4, 5, 6],
    [7, 8, 9, 1, 2],
    [3, 4, 5, 6, 7]
    ]).

2 ?- task(1, Result).
[1,2,3,4,7]
[6,7,8,1,1]
[2,3,4,5,6]
[7,8,9,9,2]
[3,4,5,6,5]
Result = [[1, 2, 3, 4, 7], [6, 7, 8, 1, 1], [2, 3, 4, 5, 6], [7, 8, 9, 9, 2], [3, 4, 5, 6|...]] .


Приклад 2:

matrix(2, [
    [0, 8, 1, 9, 4, 6],
    [1, 4, 1, 6, 9, 5],
    [9, 4, 9, 3, 3, 0],
    [4, 1, 9, 5, 8, 3],
    [6, 6, 0, 9, 8, 4],
    [7, 1, 4, 6, 4, 9]
    ]).

3 ?- task(2, Result). 
[0,8,1,9,4,9]
[1,4,1,6,8,5]
[9,4,9,5,3,0]
[4,1,9,3,8,3]
[6,6,0,9,9,4]
[7,1,4,6,4,6]
Result = [[0, 8, 1, 9, 4, 9], [1, 4, 1, 6, 8, 5], [9, 4, 9, 5, 3, 0], [4, 1, 9, 3, 8|...], [6, 6, 0, 9|...], [7, 1, 4|...]] .


Приклад 3:

matrix(3, [
    [1, 2],
    [3, 4]
    ]).

4 ?- task(3, Result). 
[1,4]
[3,2]
Result = [[1, 4], [3, 2]] .

Приклад 4:

matrix(4, [[1]]).

5 ?- task(4, Result). 
[1]
Result = [[1]] .

Приклад 5:

matrix(5, [[]]).

6 ?- task(5, Result). 
false.

Приклад 6:

matrix(6, []).

7 ?- task(6, Result). 
Result = [].