Вопрос № 115402: Прощу помощи! Как в среде Qbasic организовать произведение i-строки на побочную диоганаль матрицы.
..
Вопрос № 115.402
Прощу помощи! Как в среде Qbasic организовать произведение i-строки на побочную диоганаль матрицы.
Отправлен: 22.12.2007, 16:59
Вопрос задал: Марсель (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Megaloman
Здравствуйте, Марсель !
Насколько я понимаю, это следствие вопроса 114324:
А вот еще условие: расчет элемента вектора xi - сколярное произведение i-й строки на побочную диоганаль.
Надо бы определить, что это такое (безотносительно к Basic).
Пусть есть матрица размерности N*N c элементами A(i,j) где i,j=1 ... N
Главная диагональ A(i,i) где i=1 ... N
Побочная диагональ A(N-1+j,j) где j=1 ... N
Никогда не встречался с понятием "скалярное произведение i строки на побочную диагональ", поэтому определю ее в меру своего понимания
Si=Сумма(A(i,j)*A(N-1+j,j)) где j=1 ... N
Теперь будем программировать. Т к QBasic я не знаю (подозреваю, что знал, но забыл), буду рисовать, ориентируясь на VBA, а в QBasic перепИшите сами
Вашу предыдущую задачу я бы записал в таком виде:
Dim S(1 To 10), A(1 To 10, 1 To 10)
N=10
' ----------------- Рассчитываем элементы матрицы
For i=1 to N
For j=1 To N
A(i,j)=(Cos(i)+Sin(N-j))/j
Next
Next
' ----------------- Рассчитываем вектор с элементами = скал произв i строки на побоч диагональ
For i=1 to N
S(i)=0
For j=1 To N
S(i)=S(i)+A(i,j)*A(N-1+j,j)
Next
Next
' Здесь написать вывод результатов
Если нет желания связываться с массивами, то
аналогично можно записать (в другой программе!!!):
For i=1 to N
Si=0
For j=1 To N
Aij= (Cos(i)+Sin(N-j))/j
Dj= (Cos(N-1+j)+Sin(N-j))/j
Si=Si+Aij*Dj
Next
' Здесь написать вывод результатов
Next
Итак, я нарисовал, как можно реализовать Вашу задачу
QBasic остается за Вами
--------- Нет времени на медленные танцы!
Ответ отправил: Megaloman (статус: Студент)
Ответ отправлен: 22.12.2007, 20:13 Оценка за ответ: 5