Legio

Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору Ehour Код: const n as long = 7 ' размер матрицы Dim z() as integer redim z(1 to n, 1 to n) dim i as long, j as long for i = 1 to n for j = 1 to n if i = j then z(i,j) = 1 else z(i,j) = 0 endif next j next i ' в принципе, для инициализации достаточно и одного цикла ' потому что дефолтные значения так и так равны 0 ' for i = 1 to n ' z(i,i)=1 ' next i ' есть способ элегантный, но дающий специфический результат ' range(cells(1,1),cells(n,n)).value = z ' но лучше делать через цикл for i = 1 to n for j = 1 to n cells(i,j).value = z(i,j) next j next i | Но вообще говоря, с VBA для Excel тебе в эту тему Добавлено: ZheKA767 В котором VB? VB6 или VB.Net? Если VB6, то (если я правильно понял формулы): Код: '1 ' суммируемые значения dim x(1 to 20) as double dim y(1 to 20) as double ' предполагается, что здесь массивы x и y чем-нибудь заполняются ' ... dim i as long dim sum as double sum = 0 for i = 1 to 20 sum = sum + x(i) + y(i) next i dim result as double result = sqrt(sum) | Код: '2 dim a as double, b as double ' a = ... ' b = ... dim k as double k = ((a ^ 1.5) + (b ^ 1.5)) / (((a ^ 2) - (a * b)) ^ 1.5) ' или (если убрать не очень нужные скобки): k = (a ^ 1.5 + b ^ 1.5) / (a ^ 2 - a * b) ^ 1.5 |
|