|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
23.05.2016, 06:22 | #1 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Математически, логические операции над матрицами
Всем привет.
У меня условия задачи следующие: есть две матрицы 4x3, и все значения в этих двух матрицах всегда находятся в пределах 0..9. Вопрос: какие математические, или логические операции над двумя матрицами (или их значениями) можно сделать, что бы значения этих матриц менялись как либо, но оставались в указанных пределах (0..9) ? У меня на уме только модуль разницы над каждыми "накладываемыми" значениями. Какие есть ещё варианты ? Принимаются абсолютно любые. -------- Дальше история о том, зачем мне это надо, и что я для этого делаю. Одну матрицу я получаю следующим образом: на входе одно четырёх-байтовое значение (0..2^32-1), которое я использую для генератора псевдослучайных чисел в качестве зерна. Потом из этого ГПСЧ я забираю первые 12 значений в пределах 0..9, и помещаю в первую матрицу 4x3. Матрицы я использую исключительно для простоты восприятия. Вторую матрицу я получаю аналогичным образом. В результате я должен получить из двух матриц одну, значения которых могут меняться, но должны оставаться в изначальных пределах (0..9). Я пришёл к такому методу решения проблемы из-за того, что ГПСЧ принимает в качестве зерна четырёх-байтовое значение, но не более. Мне же нужно не иметь искусственных ограничений на количество четырёх-байтовых чисел, а матрица нужна всегда одна. Обратимость и предсказуемость таких манипуляций не имеет значения. P.S. Это часть моей дипломной работы, остальные вопросы "зачем" не имеют смысла. P.P.S. Текст главного вопроса выделен подчёркнутым.
Подпись ? Не, не слышал ...
Последний раз редактировалось OmegaBerkut; 23.05.2016 в 07:35. |
23.05.2016, 06:29 | #2 |
Старожил
Регистрация: 31.05.2010
Сообщений: 13,543
|
Да, ёжкин кот. Когда-ж уже научитесь, хотя-бы участок кода приводить?
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder |
23.05.2016, 07:13 | #3 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Smitt&Wesson
Какая разница, как выглядит код, когда в моём случае речь идёт о математике и логике ? А в качестве бонуса я привёл вербальное описание алгоритма, который я написал на некотором языке программирования, и суть этого алгоритма не имеет значения.
Подпись ? Не, не слышал ...
|
23.05.2016, 07:14 | #4 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Уважаемый, а что такое накладываемые значения?
Можно каждый элемент 1-й матрицы сравнить с элементом стоящим на таком же месте 2- матрицы A[i][j] ? B[i][j] -> false или true Последний раз редактировалось ura_111; 23.05.2016 в 07:25. |
23.05.2016, 07:37 | #5 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
ura_111
Я не зря слово "накладываемые" взял в кавычки. Тут имеется ввиду такое преобразование двух матриц в одну, которое по аналогии так же можно назвать"наложением" одной матрицы на другую.
Подпись ? Не, не слышал ...
|
23.05.2016, 07:45 | #6 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Можно и сложить накладываемые элементы матриц |A[i][j]+B[i][j]-9|
|
23.05.2016, 07:49 | #7 |
Участник клуба
Регистрация: 14.05.2016
Сообщений: 1,793
|
Или так прибавим к каждому элементу 10. Дальше перемножим их. И будем брать для записи 2-ые разряды из произведения.
А, вообще ваш первый вариант |A[i][j]-B[i][j]| самый лучший. Последний раз редактировалось ura_111; 23.05.2016 в 07:52. |
23.05.2016, 07:50 | #8 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
23.05.2016, 08:11 | #9 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Аватар
Суть этих манипуляций в том, что при повторном вводе четырёх-байтового числа в качестве зерна ГПСЧ я на выходе из Random(10) получу идентичные 12 чисел (к слову, не только 12 - вся последовательность будет идентична). И эту суть я собираюсь использовать в своей работе.
Подпись ? Не, не слышал ...
|
23.05.2016, 08:52 | #10 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
векторное произведение строки на строку и брать |V[i]| mod 10
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Операции над матрицами. | Alex4844 | Помощь студентам | 0 | 03.11.2015 17:38 |
Логические операции | Ebon | Помощь студентам | 3 | 16.12.2011 11:36 |
Логические операции | <Maria> | Общие вопросы C/C++ | 2 | 18.09.2011 19:53 |
Логические операции | тотошкин | Помощь студентам | 1 | 23.01.2010 21:52 |
TurboPascal: логические операции над целыми числами плюс перевод.... | ulala | Помощь студентам | 4 | 21.10.2009 12:00 |