Задать вопрос
19 февраля, 05:38

Нужна помощь в переводе программ с языка Pascal в VBA

1) В целочисленной последовательности есть нулевые элементы. Создать массив из номеров этих элементов.

a, b : array [1 ... 1000] of integer;

n, m, i : integer;

begin

read (n) ;

for i : = 1 to n do read (a[i]) ;

m : = 0;

for i : = 1 to n do

if a[i] = 0 then

begin

m : = m + 1;

b[m] : = i;

end;

for i : = 1 to m do write (b[i], ' ') ;

end.

2) Элементарные операции с матрицами:

(A^2+E) * 6, А-произвольная матрица, Е-единичная матрица

+1
Ответы (1)
  1. 19 февраля, 09:35
    0
    Sub num1 ()

    s = 0

    n = CInt (InputBox ("N = "))

    Range (Cells (1, 1), Cells (2 * (n + 2), n + 2)). Clear

    ReDim A (n - 1)

    ReDim B (n - 1)

    k = 1

    Cells (k, 1). Value = "A"

    Cells (k + 2, 1). Value = "B"

    k = k + 1

    m = - 1

    For i = LBound (A, 1) To UBound (A, 1)

    A (i) = Round (Rnd * 10) - 5

    Cells (k, 1 + i). Value = A (i)

    If A (i) = 0 Then

    m = m + 1

    B (m) = i

    Cells (k + 2, m + 1). Value = B (m)

    End If

    Next

    End Sub

    Sub num2 ()

    n = 16

    ReDim A (n, n), C (n, n), E (n, n)

    Range (Cells (1, 1), Cells (2 * (n + 2), n + 2)). Clear

    k = 1

    Cells (k, 1). Value = "Init"

    k = k + 1

    Cells (k + n + 1, 1). Value = "Result"

    For i = 0 To n

    For j = 0 To n

    A (i, j) = Round (Rnd * 10)

    Cells (k + i, j + 1). Value = A (i, j)

    If i = j Then E (i, j) = 1 Else E (i, j) = 0

    C (i, j) = 0

    For r = 0 To n

    C (i, j) = C (i, j) + A (i, r) * A (r, j)

    Next

    x = 6 * (C (i, j) + E (i, j))

    Cells (k + n + 2 + i, j + 1). Value = x

    Next

    Next

    End Sub
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Нужна помощь в переводе программ с языка Pascal в VBA 1) В целочисленной последовательности есть нулевые элементы. Создать массив из ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы