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*
Комментарий*

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

picsell
Юрий197
Viktorovna1012
ltdfoliant62
Novikova
avdushinalizza1
Mbkozlov6
sotrudnik3
Anatolevich-sergeevna
kononenko-elena4
kolefe22171
contact
Konchenko1980
Seid-ZadeNadezhda1769
Rizhov Alekyan325