IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Помогите, с программкой, В самом конце затруднение
сообщение
Сообщение #1


Пионер
**

Группа: Пользователи
Сообщений: 70
Пол: Мужской
Реальное имя: Мартын

Репутация: -  1  +


Вот задание:
Латинский квадрат. Латинским квадратом пордка n называется квадратная таблица размером nxn каждая строка и каждый столбец которой содержит все числа от 1 до n. Проверить является ли заданная целочисленная матрица латинским квадратом.

const nmax=100;mmax=100;
type matrix=array [1..nmax,1..mmax] of real;
var k,i,j,n,m:integer;
x:real;
a:matrix;
f:boolean;
begin
writeln('Vvedite mashtab matrix');
read (n,m);
writeln('vvedite matrix');
for i:=1 to n do
for j:=1 to m do
read(a[i,j]);
begin
for i:=1 to n do
for k:=1 to n-1 do
begin
j:=1;
repeat {упорядочивает эл-ты каждой строки матрицы по возрастанию }
if a[i,j]>a[i,j+1] then
begin
x:=a[i,j+1];
a[i,j+1]:=a[i,j];
a[i,j]:=x;
j:=j+1;
end
else
j:=j+1
until (j=n);
end;
begin
writeln ('_____MATRICA_____');
for i:=1 to n do
begin
for j:=1 to m do
write(' ', a[i,j]);
writeln;
end;
f:=false;
j:=1;
for i:=1 to n do
for j:=1 to m do
if (m=n) and (a[i,j+1]-a[i,j]=1) then {Вот тута и проблемка если следующий эл-нт меньше
предыдущего на 1 то латинский квадрат иначне нет.
Но у мя че то не получается, а мозги уже отказываются думать =) }
f:=true;
if f then
writeln ('matrica Latinskii kvadrat')
else
writeln ('matrica ne latinskii kvadrat')
end;
end;
end.



Напишите плиз что там за проверочку в конце надо поставить =)

Сообщение отредактировано: sintanial -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Пионер
**

Группа: Пользователи
Сообщений: 70
Пол: Мужской
Реальное имя: Мартын

Репутация: -  1  +


в каком порядке ? По типу такого:
12345
23451
34512
45123
51234

но ведь
35241
21354
43125
52413
14532
Это как я понимаю тоже латинский квадрат.
Я что бы проверить является ли матрица латинским квадратом сначало сортирую матрицу по возрастанию, в каждой строке, и проверяю следующий элемент больше предыдущего на 1 если это выполняется во всех строчках то это латинский квадрат иначе нет(вот в проверки у меня и ошибка). А вроде как мне кажется идея проверки латинский ли кв или нет правельна. Если не правльно то поясните почаму пожалуйста !!?
Цитата
P.S.
Объясните мне, ПОЧЕМУ ни у кого не компилируется то, что у моего компилятора Паскаля вопросов не вызывает? Это что, я нашел какой-то особый дистрибутив, с расширенными возможностями, или как? У кого-то еще программа по ссылке выдает ту же ошибку? Или это неумение авторов подобных заявлений делать ДАЖЕ Copy/Paste?


Откуда я знаю, я только на первом курсе, и паскаль только не давно начал осваивать, а до первого курса я вообще даже не знал что такое паскаль =), так что не ругайте строга, я только новечек. Я не знаю почему у меня не компелируется, я че могу поделать блин =). Кстати говоря я уже одну программу пытался так сделать в компутерном зале на мехмате(механико-математический факультет), но выдают такое же что и щас.
Цитата
Или это неумение авторов подобных заявлений делать ДАЖЕ Copy/Paste?

Код я скопировал правельно!!!


Сообщение отредактировано: sintanial -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 8.09.2025 18:42
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name