- Преподавателю
- Информатика
- Изучаем язык BASIC. Занятие 22 Сортировка матрицы (продолжение)
Изучаем язык BASIC. Занятие 22 Сортировка матрицы (продолжение)
Раздел | Информатика |
Класс | - |
Тип | Конспекты |
Автор | Гегелашвили Т.П. |
Дата | 21.08.2015 |
Формат | doc |
Изображения | Нет |
Занятие 22
Сортировка матрицы.
1. Задана матрица A(N,N) в диапазоне [-15,25]. Отсортировать матрицу, упорядочив строки массива по возрастанию max элементов в них.
CLS
RANDOMIZE TIMER
INPUT "N=";N
DIM A(N,N), M(N)
FOR I=1 TO N
FOR J=1 TO N
A(I,J)=INT(RDN*40-25)
NEXT J
NEXT I
max = -1000
FOR I=1 TO N
M(I)=0
FOR J=1 TO N
IF A(I,J) >max THEN max=A(I,J) : M(I)=max
NEXT J
PRINT M(I);
NEXT I
FOR I=1 TO N
min =1000
FOR J=I TO N
IF M(J)
NEXT J
SWAP M(I), M(K)
FOR W=1 TO N
SWAP A(I,W), A(K,W)
NEXT W
NEXT I
Вывод.
2. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив строки массива по возрастанию элементов главной диагонали.
7
3
5
7
2
1
2
8
1
2
8
2
4
3
10
4
3
10
4
4
7
7
3
5
A(N,N) B(N)
CLS
RANDOMIZE TIMER
INPUT "N=";N
DIM A(N,N), B(N)
FOR I=1 TO N
FOR J=1 TO N
A(I,J)=INT(RDN*20-12)
NEXT J
NEXT I
FOR I=1 TO N
B(I) = A(I,I) : PRINT B(I)
NEXT I
FOR I=1 TO N
min = 1000
FOR J=I TO N
IF B(J) < min THEN min = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(I ,W), A(K, W)
NEXT W
NEXT I
Вывод матрицы
3. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив строки массива по убыванию элементов главной диагонали.
Ввод массива
FOR I=1 TO N
max = -1000
FOR J=I TO N
IF B(J)> max THEN max = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(I ,W), A(K, W)
NEXT W
NEXT I
Вывод матрицы
4. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив столбцы массива по возрастанию элементов главной диагонали.
FOR I=1 TO N
min = 1000
FOR J=I TO N
IF B(J) < min THEN min = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(W, I), A(W, K)
NEXT W
NEXT I
Вывод матрицы
5. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив строки массива по возрастанию элементов побочной диагонали.
Ввод массива
FOR I=1 TO N
B(I) = A(I, N+1 - I) : PRINT B(I)
NEXT I
FOR I=1 TO N
min = 1000
FOR J=I TO N
IF B(J) < min THEN min = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(I ,W), A(K, W)
NEXT W
NEXT I
Вывод матрицы
6. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив строки массива по убыванию элементов побочной диагонали.
Ввод массива
FOR I=1 TO N
max = -1000
FOR J=I TO N
IF B(J)> max THEN max = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(I ,W), A(K, W)
NEXT W
NEXT I
Вывод матрицы
7. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив столбцы массива по возрастанию элементов побочной диагонали.
FOR I=1 TO N
min = 1000
FOR J=I TO N
IF B(J) < min THEN min = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(W, I), A(W, K)
NEXT W
NEXT I
Вывод матрицы
8. Задана матрица A(N,N) в диапазоне [-8,12]. Отсортировать матрицу, упорядочив столбцы массива по убыванию элементов побочной диагонали.
Ввод массива
FOR I=1 TO N
max = -1000
FOR J=I TO N
IF B(J)> max THEN max = B(J) : K=J
NEXT J
SWAP B(I), B(K)
FOR W=1 TO N
SWAP A(W, I), A(W, K)
NEXT W
NEXT I
Вывод матрицы
9. Задана матрица A(N,N) в диапазоне [-18,12]. Упорядочить строки массива по убыванию элементов.
7
3
5
3
5
7
1
8
2
1
2
8
3
10
4
3
4
10
A(N,N)
Ввод матрицы
FOR I=1 TO N
FOR W=1 TO N
max= -1000
FOR J=1 TO N
IF A(I,J) > max THEN max=A(I,J) : K=J
NEXT J
SWAP A(I,W), A(I,K)
NEXT W
NEXT I
Вывод
10. Задана матрица A(N,N) в диапазоне [-23,13]. Упорядочить строки массива по возрастанию элементов.
Ввод матрицы
FOR I=1 TO N
FOR W=1 TO N
min= 1000
FOR J=1 TO N
IF A(I,J) < min THEN min=A(I,J) : K=J
NEXT J
SWAP A(I,W), A(I,K)
NEXT W
NEXT I
Домашнее задание.
Задана матрица A(N,N) в диапазоне [-19,21]. Упорядочить столбцы массива по убыванию элементов.
Задана матрица A(N,N) в диапазоне [-29,21]. Упорядочить столбцы массива по возрастанию элементов.
Задана матрица A(N,N) в диапазоне [-19,11]. Упорядочить строки массива по убыванию и столбцы по возрастанию элементов