Помощь - Поиск - Пользователи - Календарь
Полная версия: Задача на проверку матрицы на симметричность относительно побочной диагонали
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
djdenisoff
Ребята,помогите!!!К пятнице надо сделать задачу!!!!!
Условие:проверить матрицу на симметричность относительно главной диагонали.Матрица вводится с текстового файла.Решить с помощью динамических переменных.
Lapp
А в чем, собственно, проблема?
djdenisoff
Цитата(Lapp @ 28.09.2011 23:18) *

А в чем, собственно, проблема?

Надо написать процедуру Ворк,написать её не знаю как....Проблема в том,что надо придумать формулу...Помогите пожалуйста
Lapp
Цитата(djdenisoff @ 29.09.2011 9:07) *
Надо написать процедуру Ворк,написать её не знаю как....Проблема в том,что надо придумать формулу...Помогите пожалуйста

Это можно. Только не процедуру, функцию.
(в этом коде ошибка, исправленный см. ниже)
type
tArr= array of array of integer;

function Symmetric(a: tArr): boolean;
var
i,j: integer;
begin
for i:=2 to Length(a) do
for j:=1 to i-1 do
if a[i,j]<>a[j,i] then begin
Symmetric:= false;
exit
end;
Symmetric:= true
end;

...

Если не в курсе про динамические массивы - спрашивай, расскажем. Или переделывай на статические..
IUnknown
Андрей, вылета не боишься на Length(a) (при использовании дин. массивов)? smile.gif
djdenisoff
Цитата(Lapp @ 29.09.2011 9:00) *

Это можно. Только не процедуру, функцию.
type
tArr= array of array of integer;

function Symmetric(a: tArr): boolean;
var
i,j: integer;
begin
for i:=2 to Length(a) do
for j:=1 to i-1 do
if a[i,j]<>a[j,i] then begin
Symmetric:= false;
exit
end;
Symmetric:= true
end;

...

Если не в курсе про динамические массивы - спрашивай, расскажем. Или переделывай на статические..




было бы лучше процедуру написать...так требует препод....помогите
sheka
procedure qwerty(a: tArr, var Symmetric: boolean);
Также учти пожелания Volvo.
djdenisoff
Помогите.программа идёт.но выводит цифру из матрицы и ответ.надо чтобы выводило только ответ.Условия задачи те же.
Lapp
Цитата(IUnknown @ 29.09.2011 11:58) *
Андрей, вылета не боишься на Length(a) (при использовании дин. массивов)? smile.gif

Oops! Sorry..
Спасибо, Володь, +1 ))

Исправленный код:
type
tArr= array of array of integer;

function Symmetric(a: tArr): boolean;
var
i,j: integer;
begin
for i:=1 to Length(a) do
for j:=0 to i-1 do
if a[i,j]<>a[j,i] then begin
Symmetric:= false;
exit
end;
Symmetric:= true
end;

...


Цитата
было бы лучше процедуру написать...так требует препод....помогите
Ты же просил "придумать тебе формулу"! Тебе дали ГОРАЗДО БОЛЬШЕ. Извини, если ты не можешь переделать функцию в процедуру, интнрес к твоей персоне испаряется.. Асталависта, учи язык.
djdenisoff
Цитата(Lapp @ 30.09.2011 0:27) *

Oops! Sorry..
Спасибо, Володь, +1 ))

Исправленный код:
type
tArr= array of array of integer;

function Symmetric(a: tArr): boolean;
var
i,j: integer;
begin
for i:=1 to Length(a) do
for j:=0 to i-1 do
if a[i,j]<>a[j,i] then begin
Symmetric:= false;
exit
end;
Symmetric:= true
end;

...


Ты же просил "придумать тебе формулу"! Тебе дали ГОРАЗДО БОЛЬШЕ. Извини, если ты не можешь переделать функцию в процедуру, интнрес к твоей персоне испаряется.. Асталависта, учи язык.


Я уже разобрался)))спасибо за помощь огромное
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.