Построчное вычисление в матрице

 

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

 

Пример 1

Задана целочисленная матрица А(5, 5). В каждом столбце матрицы вычислить произведение отрицательных элементов.

Рассмотрим фрагмент программы, вычисляющий произведение.

 

For j = 1 To 5 ‘ открываем цикл по столбцам

P = 1 ‘ задаем начальное значение для произведения

For i = 1 To 5 ‘ открываем цикл по строкам

If A(i, j) > 0 Then P = P * A(i, j) ‘ вычисляем произведение

Next i ‘ элементов в столбце

Cells(7, j) = P ‘ выводим результат

Next j

 

Пример 2

Задана целочисленная матрица Z(n, n). В каждой четной строке матрицы вычислить сумму четных элементов и количество нечетных элементов.

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

 

i = 2

While i <= N

S = 0 : K = 0

For j = 1 To N

If Z(i, j) mod 2 = 0 Then S = S + Z(i, j)

If Z(i, j) mod 2 <> 0 Then K = K + 1

Next j

Cells(N + 1 + i, 1) = "сумма=" : Cells(N + 1 + i, 2) = S

Cells(N + 2 + i, 1) = "количество=" : Cells(N + 2 + i, 2) = K

i = i + 2

Wend

 

Пример 3

В каждом столбце матрицы Х(4, 4) вычислить максимум, а затем определить минимум из этих максимумов.

 

Min = 32000

For j = 1 To 4

Max = – 32000

For i = 1 To 4

If X(i, j) > Max Then Max = X(i, j)

Next i

Cells(6, 1) = "максимум=" : Cells(6, j+1) = Max

If Max < Min Then Min = Max

Next j

Cells(6+i, 1) = "минимум=" : Cells(6+i, 3) = Min

 

Пример 4

Задан целочисленный двумерный массив Х(N, N). В каждой строке массива все элементы расположить по возрастанию.

 

For i = 1 To N

For k = 1 To N–1 ‘ начало сортировки строки методом “пузырька”

For j = 1 To N–k

If X(i, j) > X(i, j+1) Then

R = X(i, j)

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

X(I, j+1) = R

End If

Next j

Next k

Next i

 

Пример 5

В матрице P(N, N) поменять местами первую и последнюю строки.

 

For j = 1 To N

R = P(1, j)

P(1, j) = P(N, j)

P(N, j) = R

Next j

 

Пример 6

В матрице Q(N, N) удалить строку, в которой находится максимальный элемент.

 

Max = – 32000

For i = 1 To N

For j = 1 To N

If Q(i, j) > Max Then ‘ вычисление максимального элемента и

Max = Q(i, j) ‘ его номера

iMax = i

End If

Next j

Next i

For i = iMax To N–1 ‘ удаление элементов из строки, в которой

For j = 1 To N ‘ находится максимальный элемент

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

Next j

Next i

M = N – 1 ‘количество строк в новом массиве

‘ вывод нового массива

For i = 1 To M

For j = 1 To N

Cells(i+N+1, j) = Q(i, j)

Next j

Next i

 

Пример 7

В двумерный массив T(N, N) между третьим и четвертым столбцами вставить новый столбец случайных чисел.

 

For j = N+1 To 3 Step –1

For i = 1 To N

T(i, j) = T(i, j – 1)

Next i

Next j

‘ Вставка столбца

For i = 1 To N

T(i, 3+1) = Int(Rnd * 100 – 50)

Next i

M = N+1 ‘ количество столбцов в новом массиве

 








Дата добавления: 2015-11-20; просмотров: 667;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.