inververs
1

Алгоритм роста "квадрата" или как работает "черный ящик"

15.07.2012, 01:23. Показов 1928. Ответов 3
Метки нет (Все метки)

Хочу спросить совета по нахождению формулы для "черного ящика", который на входе принимает 2 значения, скажем X и Y.
Т.к содержимое "черного ящика" трудновато нарисовать в виде таблице, то сделал в виде картинки .
1-ая вертикальная и горизонтальная строка - это X и Y на пересечении которых - цифра-ответ.
Такой квадрат "вырастает" до сторон 256 на 256 но я привел лишь его часть. Легко прослеживается алгоритм его "роста"
Синим цветом я выделил квадраты которые получаются полностью копированием своего "соседа" по верхней левой диагонали. Фактически таким образом копируются все квадратики.
Я пытаюсь написать программу, где мне нужна будет функция, принимающая в качестве параметров X и Y - а на выходе - число стоящее на пересечении этих координат.
До какого то результата я уже додумался, и вывел формулу для определения ячейки при Y=0.
Результат=8*ЦЕЛОЕ(X/4)+3-X
Но как здесь учесть Y ума не приложу.
Буду благодарен за любую помощь и наводку в сторону правильного решения. Спасибо.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.07.2012, 01:23
Ответы с готовыми решениями:

Критерии вхождения "шара" в "ящик"
Дано: Ящик (С параметрами: высота, длина, ширина), n шаров в этом ящике (С радиусами ri)....

Поиск и вывод строки по заданному шаблону (с использованием симоволов "?", "*", "+")
Добрый день Имею такое задание: необходимо написать программу, которая сможет найти в файле...

Из пункта "А" приехать в пункт "Б" и показать возможные траектории движения
Задача вот такая: надо из пункта "А" приехать в пункт "Б" и показать возможные траектории движения....

Как организовать алгоритм "Помощь зала" для игры Кто хочет стать миллионером?
допустим в зале 76 человек = 100% 60 % проголосовало правильно = (0.76*60) = 45. 6 25 %...

3
119 / 119 / 4
Регистрация: 12.06.2012
Сообщений: 130
17.07.2012, 23:44 2
пусть n - номер квадрата, размер которого 2^(n+1), тогда
1) при n=1
A(1)= https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix}3&2&1&0\\ 2&3&0&1\\ 1&0&3&2\\ 0&1&2&3\end{pmatrix}
2) для других n
A(n)=https://www.cyberforum.ru/cgi-bin/latex.cgi?\begin{pmatrix}A(n-1)&A(n-1).+2^n\\A(n-1).+2^n&A(n-1)\end{pmatrix}

где .+ - операция поэлементного сложения.

Добавлено через 3 минуты
>> A(2)
ans =
3 2 1 0 7 6 5 4
2 3 0 1 6 7 4 5
1 0 3 2 5 4 7 6
0 1 2 3 4 5 6 7
7 6 5 4 3 2 1 0
6 7 4 5 2 3 0 1
5 4 7 6 1 0 3 2
4 5 6 7 0 1 2 3
2
Модератор
Эксперт по электронике
8648 / 6454 / 871
Регистрация: 14.02.2011
Сообщений: 22,529
17.07.2012, 23:49 3
Цитата Сообщение от inververs Посмотреть сообщение
До какого то результата я уже додумался, и вывел формулу для определения ячейки при Y=0.
Результат=8*ЦЕЛОЕ(X/4)+3-X
когда не знаешь алгоритма то проще всего табличный метод
но писать таблицу 256х256 удовольствие ниже среднего

Alex330, нашел закономерность (будем надеяться)а я например не увидел
1
inververs
17.07.2012, 23:56 4
Alex330, спасибо. Мне не очень правдо понятна такая форма записи. Но все равно, Good work

Для себя я вывел формулу:

Y Xor (X + 3 - 2 * (X Mod 4))
Которая получает число на пересечении x и y.
Справедливо и обратное. Зная X и Z (z - это число) - можно найти Y
Z Xor (X + 3 - 2 * (X Mod 4))

Всем спасибо. Тема решена.
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.07.2012, 23:56
Помогаю со студенческими работами здесь

Как работает метод ОПГ надстройки "Поиск решения" Excel
Как работает метод ОПГ ("Метод обобщенного градиента") надстройки "Поиск решения" Excel? Есть ли...

Как работает md5 "на пальцах"?
Знатоки md5! Можете подсказать, как считать хеш "на листочке" есть ли какие то статьи с живым...

Чем отличаются два понятия: "Абстрактный тип данных" и "Структура данных"?
Чем отличаются два понятия: "Абстрактный тип данных" и "Структура данных"?

В каких случаях лучше использовать алгоритм "разделяй и властвуй"?
Подскажите, в каких случаях лучше использовать алгоритм разделяй и властвуй? Как оформить этот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru