Паскаль. Многомерные массивы
Помогите пожалуйста.
Напишите логическую функцию TEST(A, k), принимающую значение True, если k-я строка массива совпадает с k+1 (при k=10 совпадает с 1-й строкой). |
и чему вас в школе учат :( бедолаги как жить то будете ?
строка массива ? наверное имеется ввиду ЭЛЕМЕНТ массива ? Код:
function TEST(A:array[1..10] of integer,k:Integer):Boolean; |
эмм... многомерный массив же. в нём есть столбцы и строки
|
Я наверное не совсем правильно задачу понял, раз в теме многомерные массивы ?
Опишите хотя бы тип массива. С одной стороны указано многомерные, ч другой стороны что то сказано про строки ? т.е. это или A:array[1..10][1..X] of char; или может быть A:array[1..10] of string; ??? |
Извиняюсь. type matrix = array[0..n, 0..n] of integer;
|
обычно в паскале размерность массивов с единицы начинают (если вам все же надо с нуля, то код надо будет переписать, учитывая что длина массива получится на единицу больше)
Код:
const |
спасибо вам
|
Попробовал сам написать код, но функция не хочет правильно работать. Можете помочь найти ошибку
function Test(A: matrix;k:integer):boolean; var i:integer; begin if k=n then for i:=1 to n do if A[k,i]=A[1,i] then Test:=true else Test:=false; if k<>n then for i:=1 to n do if A[k,i]=A[k+1,i] then Test:=true else Test:=false; end; |
Вам надо "вывалиться" из цикла при первом же не совпадении, а не прогонять цикл до конца, т.е. если переписать вашу функцию:
Код:
function Test(A: matrix;k:integer):boolean; |
Огромное спасибо!
|
Часовой пояс GMT +4, время: 07:59. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.