- Преподавателю
- Информатика
- Изучаем язык BASIC. Занятие 19. Задачи на нахождение суммы элементов строк или столбцов
Изучаем язык BASIC. Занятие 19. Задачи на нахождение суммы элементов строк или столбцов
Раздел | Информатика |
Класс | - |
Тип | Конспекты |
Автор | Гегелашвили Т.П. |
Дата | 24.08.2015 |
Формат | doc |
Изображения | Нет |
Занятие 19
Задачи на сумму элементов строк или столбцов
1. Задана матрица A(N,N) в диапазоне [-14,25]. Найти сумму элементов каждой строки.
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*39-14)
PRINT USING "####"; A(I,J);
NEXT J
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
2. Задана матрица A(N,N) в диапазоне [-14,25]. Найти сумму элементов каждого столбца.
Ввод матрицы
FOR J=1 TO N
S(J)=0
FOR I=1 TO N
S(J)=S(J)+A(I,J)
NEXT I
PRINT "Сумма элементов столбца";S(J)
NEXT J
3. Задана матрица A(N,N) в диапазоне [-14,25]. Найти сумму положительных элементов каждой строки.
Ввод массива
FOR I=1 TO N
S(I)=0
FOR J=1 TO N
IF A(I,J)>0 THEN S(I)=S(I)+A(I,J)
NEXT J
PRINT "Сумма положительных элементов строки";S(I)
NEXT I
4. Задана матрица A(N,N) в диапазоне [-14,25]. Найти сумму элементов каждой строки и среди них найти min.
I способ
Ввод массива
Min=1000
FOR I=1 TO N
S(I)=0
FOR J=1 TO N
S(I)=S(I)+A(I,J)
NEXT J
? S(I);
IF S(I)
NEXT I
PRINT "min="; min
II способ
Ввод массива
FOR I=1 TO N
S(I)=0
FOR J=1 TO N
S(I)=S(I)+A(I,J)
NEXT J
? S(I);
NEXT I
Min=1000
FOR I=1 TO N
IF S(I)
NEXT I
PRINT "min="; min
5. Задана матрица A(N,N) в диапазоне [-10,20]. Найти сумму элементов каждом столбце и среди них найти mах.
Ввод массива
Max=-1000
FOR J=1 TO N
S(J)=0
FOR I=1 TO N
S(J)=S(J)+A(I,J)
NEXT I
? S(J);
IF S(J)>max THEN max = S(J)
NEXT I
PRINT "max="; max
5. Задана матрица A(N,N) в диапазоне [-30,20]. Поменять местами строки массива с min и mах суммой положительных элементов.
Ввод массива
min=1000 max=-1000
FOR I=1 TO N
S(I)=0
FOR J=1 TO N
IF A(I,J)>0 THEN S(I)=S(I)+A(I,J)
NEXT J
? S(I);
IF S(I)
IF S(I)>max THEN max = S(I) : Imax=I
NEXT I
FOR I=1 TO N
SWAP A(Imin, I),A(Imax, I)
NEXT I
Вывод массива
Домашнее задание
Задана матрица A(N,N) в диапазоне [-36,21]. Поменять местами столбцы массива с min и mах суммой модулей элементов.
S(I)=S(I)+ABS(A(I,J))
Задана матрица A(N,N) в диапазоне [-16,31]. Напечатать элементы главной диагонали и сумму всех строк элементов, за исключением самого элемента главной диагонали. IF I<>J THEN S(I)=S(I)+A(I,J)
Задана матрица A(N,N) в диапазоне [-26,11]. Напечатать элементы побочной диагонали и сумму всех строк элементов, за исключением самого элемента побочной диагонали. IF I+J<>N+1 THEN S(I)=S(I)+A(I,J)