2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1, 2, 3, 4  След.
 
 Re: расшифруйте формулу
Сообщение27.09.2010, 22:41 
исходя по логике тогда...

Изображение
Изображение
Изображение
$P_i_j =7$ если
Изображение

...получим

P:= $\left( \begin{array}{ccc} 7 & 7 & 5 \\ 
7 & 5 & 5 \\ 5 & 5 & 5 \end{array} \right)
$

тогда как итератор j в данном случае - это номер группы?

 
 
 
 Re: расшифруйте формулу
Сообщение27.09.2010, 22:52 
Аватара пользователя
Эта запись лишена смысла, ибо $i$ используется и как переменная суммирования, и как индекс массива $P$.

 
 
 
 Re: расшифруйте формулу
Сообщение27.09.2010, 23:11 
gris в сообщении #356804 писал(а):
Эта запись лишена смысла, ибо $i$ используется и как переменная суммирования, и как индекс массива $P$.

Немного подправил :oops:

и как "переменная суммирования"? Я думал, что i - это просто индекс :?

 
 
 
 Re: расшифруйте формулу
Сообщение27.09.2010, 23:49 
Аватара пользователя
Если бы $P$ был одномерным массивом, то никаких проблем бы не было.

$\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{i=1}^{M } K_i_j \leqslant L_j\right) \{P_j := 7\}\}$

Но у Вас это двумерный массив. Моя запись

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{k=1}^{i } K_k_j \leqslant L_j\right) \{P_i_j := 7\}\}\}$

синтасически корректна и имеет смысл переименования в 7 тех элементов массива $P$, для индексов которых выполняется куммулятивное неравенство.

Вы же фактически пишете запись

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{i=1}^{M} K_i_j \leqslant L_j\right) \{P_i_j := 7\}\}\}$,

которая попросту некорректна, ошибочна синтаксически, так как переменная $i$ используется как индекс суммирования во внешнем и во вложенном цикле.

*** По крайней мере интереснее, чем постулаты разбирать или на 9 страницах интеграл от логарифма брать. И формулы красивы.

 
 
 
 Re: расшифруйте формулу
Сообщение27.09.2010, 23:50 
ого, уже третью страницу расшифровываем, уважаю

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 02:55 
gris в сообщении #356818 писал(а):
Если бы $P$ был одномерным массивом, то никаких проблем бы не было.

$\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{i=1}^{M } K_i_j \leqslant L_j\right) \{P_j := 7\}\}$

Но у Вас это двумерный массив. Моя запись

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{k=1}^{i } K_k_j \leqslant L_j\right) \{P_i_j := 7\}\}\}$

синтасически корректна и имеет смысл переименования в 7 тех элементов массива $P$, для индексов которых выполняется куммулятивное неравенство.

Вы же фактически пишете запись

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{i=1}^{M} K_i_j \leqslant L_j\right) \{P_i_j := 7\}\}\}$,

которая попросту некорректна, ошибочна синтаксически, так как переменная $i$ используется как индекс суммирования во внешнем и во вложенном цикле.

*** По крайней мере интереснее, чем постулаты разбирать или на 9 страницах интеграл от логарифма брать. И формулы красивы.



Ну дело в том, что предполагается, что $P_i_j$ идет паралельно $K_i_j$ потому наверное и возможно подставить $P_i_j$ в один цикл с $K_i_j$

Или я не прав? Я просто видел такую запись ранее, а сейчас стало интересно разобрать её.
А насчет переменной i, то по правилам синтаксиса она не будет итерироваться во вложенном цикле как j. i "застынет" пока вложенный цикл j не "проиграет" до N, потому синтаксически эта запись возможна %)

-- Вт сен 28, 2010 04:05:22 --

а внедренный $_k$ - это дополнительный итератор или что?

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 05:18 
вот не совсем понятна такая запись

$P_i_j $= 10 если
$\sum_{i=1}^{M} \sum_{j=1}^{M} K_i_j \leq 3$

Как бы подсчитать сумму всех элементов, но когда $P_i_j$ получит значение 10? Как-то в процессе подсчета суммы, но честно говоря не совсем понял как совместить в один максимум 2 цикла. Это уже не подсчет ряда, а как-то по-другому...
Я думаю, что $P_i_j$ получит значение 10 на неком промежутке получения суммы всех элементов, но я не уверен

вот например

матрица $K$: $\left( \begin{array}{ccc} 1 & 2 & 3 \\ 
1 & 5 & 6 \\ 1 & 8 & 9 \end{array} \right)
$
матрица $P$: $\left( \begin{array}{ccc} 9 & 9 & 9 \\ 
9 & 9 & 9 \\ 9 & 9 & 9 \end{array} \right)
$
и условие
$P_i_j $= 10 если
$\sum_{i=1}^{M} \sum_{j=1}^{M} K_i_j \leq 3$

Если речь идет о сумме всех элементов, то здесь вполне можно предположить, что в данном случае наверное аддитирование идет сверху вниз (перебирая столбцы $K$) непрерывно и уже эта сумма дает "истина/ложь" в булевом операторе?

В результате получим
матрица $P$: $\left( \begin{array}{ccc} 10 & 9 & 9 \\ 
10 & 9 & 9 \\ 10 & 9 & 9 \end{array} \right)
$

Но я не уверен... Поправьте если я снова что-то напутал плз :oops:

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 07:30 
Аватара пользователя
Речь идёт не о сумме элементов всей матрицы, а о сумме элементов углового минора. Кстати, $P_{12}=10$ так как $1+2\leqslant 3$.

И опять у Вас внешние индексы совпадают с индексами внутренних циклов суммирования. Разумеется, при написании конкретного кода эти шероховатости будут устранены автоматически, да и наши формулы нельзя воспринимать как код, ибо он крайне неэффективен. Массив $P$ надо просчитывать за один проход матрицы $K$, да ещё учитывать её априорные свойства. Если она, например, положительна, то надо предусмотреть своевременное завершение цикла.

Но это всё семечки. Надо мыслить широко, не привязываясь к синтаксису и особенностям конкретного языка. А то получится как у старательной девочки, которая пишет унылые стихи, но зато по всем правилам стихосложения.

Но нельзя делать ошибки по-крупному. Вот Вы пишете
$P_i_j $= 10 если $\sum_{i=1}^{M} \sum_{j=1}^{M} K_i_j \leq 3$
С чего это вдруг наша матрица стала квадратной? И как будет выглядеть это условие для конкретных значений? Например, для вычисления $P_{12}$?

Корректно записать условие так:

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{m=1}^{i }\sum\limits_{n=1}^{j } K_m_n \leqslant 3\right) \{P_i_j := 10\}\}\}$

Тогда оно понятно и на вид приятно. Вообще старайтесь делать всё красиво. Эстетика кода ассемблируется из его внутренней, логической, красоты и внешней, синтаксической.

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 07:47 
Цитата:
С чего это вдруг наша матрица стала квадратной? И как будет выглядеть это условие для конкретных значений? Например, для вычисления $P_1_2$


Так предполагаю просто, как вариант, что квадратная :)
А насчет ещё дополнительных $_m _n$, то это в смысле нужно выразить суммирование по столбцам и одновременно по рядам и тоже одновременно? Для этого сразу 4 итератора? $_i _j _m _n$
?

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 08:21 
Аватара пользователя
Ну а куда деваться, если у нас 4 вложенных цикла? На каждый цикл по счётчику aka итератору. Чего экономить-то?

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 21:30 
Вот это да...
4 цикла?! :shock: Я все время думал, что их 2, а дополнительные итераторы - повторяют значение i,j :?

А можно как-то проще это выразить?
K:=$\left( \begin{array}{ccс} 1 & 2 & 3 \\ 
4 & 5 & 6 \\ 7 & 8 & 9 \end{array} \right) P_i_j=5 
$ если Изображение

Я сейчас пытаюсь понять схему движения - мне так проще представить... С чего начинается - это:

Цитата:
i=1; j=1,2,3
1
1+2
3+3
i=2; j=1,2,3
6+4
10+5
15+6

или

i=1,2,3; j=1
1
1+4
5+7
i=1,2,3; j=2
12+2
14+5
19+8
?

прокомментируйте плз

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 21:38 
Аватара пользователя
guest001, вы делаете что-то странное (не в данной задаче, а в целом; насчёт задачи не вникал), это примерно как покорять гору, высадившись на вершине с парашютом и идя оттуда вниз. Попробуйте сначала стандартные задачи: транспонирование матрицы, умножение матрицы на вектор...

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 21:47 

(Оффтоп)

ну или таблицу умножения, в конце-то концов, запрограммировать...

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 21:49 
А сумма такой матрицы будет 45 или 90?

@ИСН
Спасибо, я понимаю, но просто сильно интересно стало :)

 
 
 
 Re: расшифруйте формулу
Сообщение28.09.2010, 21:52 
Аватара пользователя
В первом случае Вы считаете по формуле $\sum\limits_{i=1}^{3}\sum\limits_{j=1}^{2 } K_i_j$, то есть проверяете условие для $P_3_2$.

Во втором случае Вы считаете по формуле $\sum\limits_{j=1}^{3}\sum\limits_{i=1}^{2 } K_i_j$, то есть проверяете условие для $P_2_3$.

В первом случае суммирование идёт вдоль строк, во втором вдоль столбцов. В силу коммутативности и ассоциативности сложения мы получим одинаковый результат при симметричной матрице.
Ведь у Вас обсчитываются разные элементы:$P_2_3$ и $P_3_2$

Вопросы у Вас совершенно нормальные. Матрицы это такая неразбериха. Я ещё ра приведу свою формулу в другом, но совершенно эквивалентном виде.

$\mathrm{for}\, i=1,M \quad\{\mathrm{for}\, j=1,N \quad\{\mathrm{if} \left(\sum\limits_{n=1}^{j}\sum\limits_{m=1}^{i } K_m_n \leqslant 3\right) \{P_i_j := 10\}\}\}$

 
 
 [ Сообщений: 60 ]  На страницу Пред.  1, 2, 3, 4  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group