- •Часть первая
- •Предварительные сведения
- •Индекс элемента массива
- •1.1. Объявление массива
- •Dim имя1 (индекс1) [, имя2 (индекс2), ...]
- •[Нижний to] верхний [, нижний to] верхний ...
- •1.2. Ввод и вывод элементов массива
- •1.3. Задачи для дополнительного решения
- •2. Примеры решения типовых задач с использованием одномерных массивов
- •2.1. Определение суммы, произведения, количестваэлементов массива
- •2.2. Задачи для дополнительного решения
- •2.3. Определение максимального и минимального значения в массиве
- •2.4. Задачи для дополнительного решения
- •2.5. Определение первого вхождения определенного значения
- •1 Способ (с помощью оператора цикла for...Next)
- •2 Способ (с помощью оператора цикла while...Wend)
- •2.6. Задачи для дополнительного решения
- •2.7. Определение k-го вхождения определенного значения
- •1 Способ (с помощью оператора цикла for...Next)
- •2 Способ (с помощью оператора цикла while...Wend)
- •2.8. Задачи для дополнительного решения
- •Удаление элемента из массива
- •Задачи для дополнительного решения
- •Вставка элемента в заданную позицию
- •Задачи для дополнительного решения
- •3. Примеры решения типовых задач с использованием двумерных массивов
- •3.1. Определение суммы, произведения, количества в каждой строке или столбце
- •3.2. Задачи для дополнительного решения
- •3.3. Определение максимального и минимального значения в каждой строке или столбце матрицы
- •3.4. Задачи для дополнительного решения
- •3.5. Определение первого вхождения определенного значения в каждую строку и столбец матрицы
- •1 Способ (используя оператор цикла for...Next)
- •2 Способ (с помощью оператора цикла while...Wend)
- •3.6. Задачи для дополнительного решения
- •3.7. Главная и побочная диагональ матрицы
- •Задачи для дополнительного решения
- •Удаление строки или столбца из матрицы
- •Задачи для дополнительного решения
- •3.10.Включение строки или столбца в матрицу
- •3.11. Задачи для дополнительного решения
- •Часть вторая задания для организации самостоятельной работы студентов
- •Дан одномерный элемент. Удалить все отрицательные элементы из массива.
- •Задача 3 (стр.62)
- •Задача 4 (стр. 67)
- •2. Примеры решения типовых задач с использованием одномерных массивов . . . . . .
- •420008, Казань, Университетская, 17 – 319
3.7. Главная и побочная диагональ матрицы
Алгоритм решения
Условием главной диагонали является равенство индексов по строкам и столбцам j = i. Из этого следуя, условием нахождения элемента над главной диагональю является i < j, под главной диагональю i > j.
Условием побочной диагонали является следующее равенство j + i = n + 1 (n – размер квадратной матрицы). Из этого следуя, условием нахождения элемента над побочной диагональю является i + j < n + 1, под побочной диагональю i + j > n +1.
пример 21
Дана матрица чисел. Найти максимальный элемент главной диагонали матрицы.
Тест
Данные |
Результат |
|
n = 3, m = 3 |
|
MAX = A(3,3)=4 |
Исполнение алгоритма
i |
j |
Проверка условия для определения главной диагонали |
Проверка условия для нахождения MAX |
MAX |
K (номер MAX) |
|
|
|
|
A(1,1) = -1 |
1 |
2 |
|
|
|
|
|
|
1 |
i=j (ложь) 21 |
|
|
|
|
2 |
i=j (истина) 2=2 |
A(2,2)>MAX (ложь) -5<-1 |
значение максимума остается прежним |
|
|
3 |
i=j (ложь) 23 |
|
|
|
3 |
|
|
|
|
|
|
|
i=j (ложь) 31 |
|
|
|
|
2 |
i=j (ложь) 32 |
|
|
|
|
3 |
i=j (истина) 3=3 |
A(3,3)>MAX (истина) 4>-1 |
|
3 |
Блок-схема алгоритма
Начало
Ввод n, массив А
max=A11 ; K=1
i=2,n
j=1,n
+ i=j ; Aij>MAX -
MAX=Aij K=i
Вывод MAX
Конец
Программа
CLS
INPUT "введи размер матрицы " ; n
DIM A(n, n)
PRINT "введи матрицу"
FOR i = 1 TO n
FOR j = 1 TO n
'Ввод матрицы с клавиатуры
INPUT A(i,j)
NEXT j, i
'Задание начального значения максимума на главной диагонали матрицы
MAX = A(1,1) : K = 1
FOR i = 2 TO n
FOR j = 1 TO n
'Нахождение наибольшего значения главной диагонали матрицы
IF i = j AND A(i,j) > MAX THEN MAX = A(i,j) :K = i
NEXT j
NEXT i
PRINT "MAX=" ; MAX
END
Задачи для дополнительного решения
В массиве записаны целые числа. Определить сумму элементов главной диагонали массива, больших 20.
В массиве записаны целые числа. Определить число четных элементов главной диагонали массива.
В массиве записаны целые числа. Определить сумму элементов главной диагонали массива, оканчивающихся цифрой "7".
Определить минимальный элемент главной диагонали массива.
Определить координаты первого максимального элемента побочной диагонали массива.
Задача 6*. В двумерном массиве из n строк и n столбцов, где n — нечетное число, все элементы различны. Наибольший элемент среди стоящих на главной и побочной диагонали поменять местами с элементом, стоящим на пересечении этих диагоналей.
Определить максимальный элемент над побочной и над главной диагональю массива.
Дана квадратная матрица. Подсчитать сумму положительных элементов под главной диагональю.
Дана квадратная матрица. Определить количество положительных элементов над главной диагональю К1.
Задача 10*. Дана квадратная матрица. Поменять местами максимальные элементы, расположенные под главной диагональю и под побочной диагональю.
