![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
asCOOLs |
![]()
Сообщение
#1
|
Гость ![]() |
Дана матрица х размерности n*n . Два столбца матрицы называются похожими, если совпадают совокупности чисел, встречающихся в этих столбцах. Найти количество попарно похожих и непохожих столбцов матрицы x . Вывести список этих столбцов.
надо сделать на паскале. спосибо. |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
asCOOLs
Попробуй так: Код const n = 4; a: array[1 .. n, 1 .. n] of integer = ((1, 2, 3, 4), (3, 4, 5, 7), (9, 7, 2, 3), (0, 3, 1, 2)); {Функция проверяет, входит ли элемент Num в столбец Col} function is_exists(num, col: integer): boolean; var i: integer; exists: boolean; begin exists := false; for i := 1 to n do exists := exists or (num = a[i, col]); is_exists := exists end; {Функция проверяет, "похожи" ли столбцы X, Y} function is_alike(x, y: integer): boolean; var i: integer; alike: boolean; begin alike := true; for i := 1 to n do alike := alike and is_exists(a[i, x], y); is_alike := alike end; var i, j: integer; begin for i := 1 to n do for j := i to n do if i <> j then if is_alike(i, j) then writeln(i:3, j:3, ' похожи') else writeln(i:3, j:3, ' НЕ похожи'); end. |
![]() ![]() |
![]() |
Текстовая версия | 18.06.2025 5:51 |