Изучаем язык BASIC. Занятие 21 Сортировка матрицы

Раздел Информатика
Класс -
Тип Конспекты
Автор
Дата
Формат doc
Изображения Нет
For-Teacher.ru - все для учителя
Поделитесь с коллегами:

Занятие 21

Сортировка матрицы.

1. Задана матрица A(N,N) в диапазоне [-13,15]. Отсортировать матрицу, упорядочив строки массива по возрастанию суммы элементов.

CLS

RANDOMIZE TIMER

INPUT "N=";N

DIM A(N,N), S(N)

FOR I=1 TO N

FOR J=1 TO N

A(I,J)=INT(RDN*28-15)

NEXT J

PRINT

NEXT I

FOR I=1 TO N

S(I)=0

FOR J=1 TO N

S(I)=S(I)+A(I,J)

NEXT J

PRINT S(I);

NEXT I

FOR I=1 TO N

min =1000

FOR J=I TO N

IF S(J)

NEXT J

SWAP S(I), S(K)

FOR W=1 TO N

SWAP A(I,W), A(K,W)

NEXT W

NEXT I

FOR I=1 TO N

FOR J=1 TO N

PRINT USING "####"; A(I,J);

NEXT J

PRINT

NEXT I

2. Задана матрица A(N,N) в диапазоне [-23,13]. Отсортировать матрицу, упорядочив столбцы массива по убыванию суммы положительных элементов.

Ввод матрицы

FOR I=1 TO N

S(I)=0

FOR J=1 TO N

IF A(I,J)>0 THEN S(I)=S(I)+A(J,I)

NEXT J

PRINT S(I);

NEXT I

FOR I=1 TO N

max = -1000

FOR J=I TO N

IF S(J)> max THEN max=S(J) : K=J

NEXT J

SWAP S(I), S(K)

FOR W=1 TO N

SWAP A(W,I), A(W,K)

NEXT W

NEXT I

Вывод матрицы

3.

CLS

RANDOMIZE TIMER

INPUT "N=";N

DIM A(N,N), S(N), SR(N)

FOR I=1 TO N

FOR J=1 TO N

A(I,J)=INT(RDN*28-15)

NEXT J

PRINT

NEXT I

FOR I=1 TO N

S(I)=0 : SR(I)=0

FOR J=1 TO N

S(I)=S(I)+A(I,J)

NEXT J

SR(I)=S(I)/N

PRINT SR(I);

NEXT I

FOR I=1 TO N

min =1000

FOR J=I TO N

IF SR(J)

NEXT J

SWAP SR(I), SR(K)

FOR W=1 TO N

SWAP A(I,W), A(K,W)

NEXT W

NEXT I

FOR I=1 TO N

FOR J=1 TO N

PRINT USING "####"; A(I,J);

NEXT J

PRINT

NEXT I

4. Задана матрица A(N,N) в диапазоне [-23,13]. Отсортировать матрицу, упорядочив столбцы массива по убыванию суммы четных элементов.

Ввод матрицы

FOR I=1 TO N

S(I)=0

FOR J=1 TO N

IF A(I,J)/2=A(I,J)\2 THEN S(I)=S(I)+A(J,I)

NEXT J

PRINT S(I);

NEXT I

FOR I=1 TO N

max = -1000

FOR J=I TO N

IF S(J)> max THEN max=S(J) : K=J

NEXT J

SWAP S(I), S(K)

FOR W=1 TO N

SWAP A(W,I), A(W,K)

NEXT W

NEXT I

Вывод матрицы

Домашнее задание.

Задана матрица A(N,N) в диапазоне [-19,21]. Отсортировать матрицу, упорядочив строки массива по возрастанию произведений четных элементов каждой строки.

Задана матрица A(N,N) в диапазоне [-29,21]. Отсортировать матрицу, упорядочив столбцы массива по возрастанию суммы положительных четных элементов каждой строки.

Задана матрица A(N,N) в диапазоне [-19,11]. Отсортировать матрицу, упорядочив строки массива по убыванию min элементов каждой строки

© 2010-2022