Форма для отображения на рабочем листе и запуска программы розыгрыша массивов
На этом же листе можно разместить кнопку запуска программы розыгрыша ДВУМЕРНОГО массива, присвоив ей имя процедуры запуска программы (макрос) ZadanieААА. Сама программа представлена ниже:
Option Explicit Sub ZadanieААА() 'Розыгрыш и обработка двумерного массива целых чисел Dim A(4, 3) As Integer 'Объявление двумерного массива целых чисел Dim i%, j%, Sctr%, Sstolb%, Sum%, kol%, diag%,diagTop%, diagDown% 'Объявление переменных типа Integer Debug.Print "=================Элементы массива (матрицы)" Randomize 'оператор, который запускает начальное значение случайных чисел 'РОЗЫГРЫШ И ПЕЧАТЬ МАССИВА For i = 1 To 4 For j = 1 To 3 A(i, j) = Rnd * 20 – 10 'целые числа от -10 до 10 Debug.Print A(i, j); 'печать всех элементов строки массива в одной строке 'если не поставить знак «;» (точка с запятой)-, то печать элементов массива будет в столбик. ПОПРОБУЙТЕ!!! Next j Debug.Print 'переход на новую строку для печати очередной строки массива Next i Debug.Print "=======================" 'СУММИРОВАНИЕ СТРОК МАССИВА For i = 1 To 4 'от первой до четвертой строки à по всем строкам Sctr =0 'обнуление суммы очередной (i-той) строки For j = 1 To 3 'проход по всем элементам текущей строки Sctr = Sctr + A(i, j) 'и суммирование этих элементов Next j Debug.Print "сумма "; i; "-й строки= "; Sctr 'печать суммы очередной (i-той) строки Next i Debug.Print "=======================" 'СУММИРОВАНИЕ НЕЧЕТНЫХ СТОЛБЦОВ МАССИВА For j = 1 To 3 Step 2 'только нечетные столбцы!!!! Sstolb = 0 'обнуление суммы столбца For i = 1 To 4 'проход по всем элементам текущего (нечетного) столбца Sstolb = Sstolb + A(i, j) 'и суммирование этих элементов Next i Debug.Print "сумма "; j; "-го столбца = "; Sstolb Next j Debug.Print "=======================" Sum = 0: kol = 0: diag = 0: diagTop = 0: diagDown = 0 'обнуление вычисляемых переменных For i = 1 To 4 For j = 1 To 3 Sum = Sum + A(i, j) 'суммирование ВСЕХ ЭЛЕМЕНТОВ массива
If A(i, j) >0 Then kol=kol+1 'суммирование КОЛИЧЕСТВА ПОЛОЖИТЕЛЬНЫХ чисел массива If i = j Then diag = diag + A(i, j) 'суммирование элементов ГЛАВНОЙ ДИАГОНАЛИ массива If j > i Then diagTop = diagTop + A(i, j) 'сумма над гл.диагональю If i > j Then diagDown = diagDown + A(i, j) 'сумма под гл.диагональю Next j Next i Debug.Print "общая сумма = "; Sum; " положительных чисел = "; kol Debug.Print "сумма главной диагонали массива = "; diag Debug.Print "сумма над гл.диагональю = "; diagTop Debug.Print "сумма под гл.диагональю = "; diagDown MsgBox "Результат в окне отладки модуля (Immediate)" End Sub ============Элементы массива (матрицы) 6 -7 -3 2 7 8 1 6 -9 -5 8 2 ======================= сумма 1 -й строки= -4 сумма 2 -й строки= 17 сумма 3 -й строки= -2 сумма 4 -й строки= 5 ======================= сумма 1 -го столбца = 4 сумма 3 -го столбца = -2 ======================= общая сумма = 16 положительных чисел = 8 сумма главной диагонали массива = 4 сумма над гл.диагональю = -2 сумма под гл.диагональю = 14
Представленный выше результат работы программы Sub ZadanieААА() можно посмотреть в окне отладки, который вызывается из меню View в окне VB или сочетанием Ctrl+G.
Читайте также: A) простая, единая, целостная форма национально-государственного устройства, при которой территория государства подразделяется на административно-территориальные единицы. Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|