Viktorovich
?>

Интерпретировать данный код из языка c++ в vba

Информатика

Ответы

vtarasyuk

Sub abcd()

   Dim a(1 To 10, 1 To 10) As Double

   Dim n As Integer, m As Integer, i As Integer, j As Integer

   Dim imx As Integer, jmx As Integer

   Dim mx As Double

   Range(Cells(1, 1), Cells(30, 20)).Clear

   Do

       n = CInt(InputBox("Введите размер матрицы от 2 до 10"))

   Loop Until n >= 2 And n <= 10

   Randomize Timer

   Cells(1, 1) = "Исходная матрица"

   For i = 1 To n

       For j = 1 To n

           a(i, j) = 18 * Rnd - 9

           If i + j = 2 Then

               mx = a(1, 1)

               imx = 1

               jmx = 1

           Else

               If Abs(a(i, j)) > Abs(mx) Then

                   mx = a(i, j)

                   imx = i

                   jmx = j

               End If

           End If

       Next j

   Next i

   Dim r As Range

   Set r = Range(Cells(2, 1), Cells(1 + n, n))

   r = a

   r.NumberFormat = "0.00"

   Dim cr As Integer

   cr = n + 2

   Cells(cr, 1) = "Максимальный по модулю элемент= " + Format(mx, "##0.00") + _

       " в строке " + CStr(imx) + " в столбце " + CStr(jmx)

   cr = cr + 1

   m = n

   If imx < m Then

       For i = imx To m - 1

           For j = 1 To n

               a(i, j) = a(i + 1, j)

           Next j

       Next i

   End If

   m = m - 1

   If jmx < n Then

       For j = jmx To n - 1

           For i = 1 To m

               a(i, j) = a(i, j + 1)

           Next i

       Next j

   End If

   n = n - 1

   Cells(cr, 1) = "Удаление строки " + CStr(imx) + " и столбца " + CStr(jmx)

   Set r = Range(Cells(cr + 1, 1), Cells(cr + n, n))

   r = a

   r.NumberFormat = "0.00"

End Sub

Вывод будет или на лист, куда вставлен код (или где кнопка с кодом), или на текущий лист, если код сделать модулем проекта.

Грачева мураховская

k = (2 * x * y * z) / (3 * x - z) - (5 * x * y - z) / (z - 4 * y)

t = abs(3 * c - d - a) / (abs(a - d) * 5 * a * b)

Объяснение:

Т.к. математических выражений нет, исправлены очевидные ошибки, но возможно наличие отличий от математических выражений

Считаем, что оператор оператор присваивания равно (=), а abs - математическая функция возвращающая абсолютное значение числового выражения

Правила записи математических выражений:

1) Выражение записывается в одну в строку (линейная запись)

2) Для обозначения переменных используются буквы латинского алфавита

3) Операции выполняются в порядке старшинства: сначала вычисление функций, затем возведение в степень, потом умножение и деление, а последние сложение и вычитание

4) Операции одного старшинства выполняются слева направо. Для регулирования порядка операций используются круглые скобки

5) Нельзя ставить рядом два знака операций

6) Нельзя опускать знак умножения между множителями

7) Разделителем целой и дробной части числа является точка

diana-kampoteks

Объяснение:

Числовые,буквенные выражения и выражения с переменными в своей записи могут содержать знаки различных арифметических действий. При преобразовании выражений и вычислении значений выражений действия выполняются в определенной очередности, иными словами, нужно соблюдать порядок выполнения действий.

В этой статье мы разберемся, какие действия следует выполнять сначала, а какие следом за ними. Начнем с самых простых случаев, когда выражение содержит лишь числа или переменные, соединенные знаками плюс, минус, умножить и разделить. Дальше разъясним, какого порядка выполнения действий следует придерживаться в выражениях со скобками. Наконец, рассмотрим, в какой последовательности выполняются действия в выражениях, содержащих степени, корни и другие функции.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Интерпретировать данный код из языка c++ в vba
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

gamolml
Naumenkova-Ivanov
Александрович Владимирович
Лихачев Полина1978
N-odes-art-school410
Bella
tanysha1990
olgolegovnak
ver2bit
Ярослав
badalovao256
olechka197835
bykotatyana
Shirochkingames
savva-vika