Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4_Метод_Часть_4_Массивы.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
620.54 Кб
Скачать

1 Способ (используя оператор цикла for...Next)

CLS

INPUT "введи размер матрицы " ; n, m

DIM A(n, m)

PRINT "введи матрицу"

'Цикл по столбцам матрицы

FOR j = 1 TO m

'Цикл по строкам матрицы

FOR i = 1 TO n

'Ввод элементов массива

INPUT A(i,j)

NEXT i, j

FOR j = 1 TO m

FOR i = 1 TO n

'Поиск первого отрицательного элемента в каждом столбце

IF A(i,j) < 0 THEN L = i : EXIT FOR

NEXT i

B(j) = A(L,j)

NEXT j

FOR j = 1 TO m

PRINT B(j)

NEXT j

ЕND

2 Способ (с помощью оператора цикла while...Wend)

CLS

INPUT "введи размер матрицы " ; n, m

DIM A(n, m)

PRINT "введи матрицу"

'Цикл по столбцам матрицы

FOR j = 1 TO m

'Цикл по строкам матрицы

FOR i = 1 TO n

'Ввод элементов массива

INPUT A(i,j)

NEXT i, j

FOR j = 1 TO m

'Присваивание начального значения счетчика цикла по строкам

i=1

'Поиск первого положительного элемента по столбцам

WHILE A(i,j)>=0 OR i < = n

i = i + 1

WEND

B(j) = A(i,j)

NEXT j

FOR j = 1 TO m

PRINT B(j)

NEXT j

END

пример 20

Дана матрица чисел. Заменить первый нулевой элемент в каждой строке на 1.

Программа

CLS

INPUT "введи размер матрицы " ; n, m

DIM A(n, m)

PRINT "введи матрицу"

FOR i = 1 TO n

FOR j = 1 TO m

'Ввод элементов матрицы

INPUT A(i,j)

NEXT j, i

FOR i = 1 TO n

FOR j = 1 TO m

'Нахождение номера первого нулевого элемента в каждой строке

IF A(i,j) = 0 THEN K = j : EXIT FOR

NEXT j

'Замена первого нулевого элемента на 1

A(i,K) = 1

NEXT i

FOR i = 1 TO n

FOR j = 1 TO m

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

PRINT A(i,j);

NEXT j

PRINT

NEXT i

END

3.6. Задачи для дополнительного решения

  1. Дан двумерный массив целых чисел. В каждой его строке найти первый отрицательный элемент (принять, что отри­цательные элементы есть в каждой строке).

  2. Дан двумерный массив целых чисел. В каждом его столбце найти первый нечетный элемент (принять, что нечетные элементы есть в каждом столбце).

  3. Дан двумерный массив целых чисел. В каждом его столбце найти второй положительный элемент (принять, что положительные элементы есть в каждом столбце).

Задача 4*. В каждом столбце двумерного массива поме­нять местами первый отрицательный элемент и первый нулевой.

  1. Дана квадратная матрица. Определить разницу первого положительного и первого отрицательного элемента каждого столбца матрицы А.

  2. В каждой строке двумерного массива поме­нять местами первый нулевой элемент и последний отри­цательный. Если таких элементов нет, то должно быть выведено соответствующее сообщение.

  3. В каждом столбце двумерного массива поме­нять местами первый отрицательный элемент и послед­ний нулевой. Если таких элементов нет, то должно быть выведено соответствующее сообщение.

  4. Дан двумерный массив целых чисел. Первый нечетный элемент каждой строки удвоить (предполагается, что в каждой строке есть нечетный элемент).

Задача 9*. Определить в какой строке матрицы находится наибольший первый элемент кратный 3.

  1. Определить в каком столбце матрицы находится наименьший первый элемент, принадлежащий интервалу [1, 4].

  2. В каждом столбце двумерного массива заменить первый отрицательный элемент на –1, а первый положительный элемент на 1.

  3. Дана квадратная матрица. Определить разницу между первым положительным элементом и максимальным элементом в каждом столбце матрицы.

  4. Дана квадратная матрица. Определить сумму между первым четным элементом и минимальным элементом в каждой строке матрицы.

  5. В каждой строке двумерного массива поме­нять местами первый элемент кратный 5 и максимальный элемент.

Задача 15*. В каждом столбце двумерного массива разделить элементы на первый элемент кратный 3.