Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод указания ИНФОРМ Общ курс Стационар укр.doc
Скачиваний:
8
Добавлен:
10.02.2016
Размер:
2.89 Mб
Скачать

3.12. Приклад виконання задачі 5 б

Завдання: розробити алгоритм і скласти програму обробки двовимірних масивів

Умова: Заданий двовимірний масив, що полягає з m рядків і n стовпців елементів: aij.

Визначити в кожному стовпці кількість kj елементів відмінних від 0 з непарними номерами рядків.

Здобути новий масив С із вихідного масиву А заміною нульових елементів останнім елементом кожного рядка.

Розв'язання: позначимо aij → A(I,J), cij → C(I,J), m → M, n → N,

i → I, j →J, kj → K(J).

Блок – схема

- +

+

- +

Програма

REM двовимірний масив ‘оператор - коментар

DIM M, N, I, J опис простих змінних

INPUT “ M, N ”; M, N ‘ введення даних

DIM K(1 TO N) ‘ опис одномірного й двовимірних масивів

DIM A(1 TO M, 1 TO N), C(1 TO M, 1 TO N)

DATA 3,6,0,2,9,5,0,4,0,7,3,2,3,8,0,5 ‘ рядок даних

FOR I = 1 TO M ‘оператор початку циклу по i

FOR J = 1 TO N ‘оператор початку циклу по j

READ A(I,J) ‘ введення даних

NEXT J ‘завершення циклу по j

NEXT I ‘завершення циклу по i

FOR J = 1 TO N STEP 2 ‘оператор початку циклу по j

K(J) = 0 ‘оператор присвоювання

FOR I = 1 TO M ‘оператор початку циклу по i

IF A(I,J) <> 0 THEN ‘оператор умовного переходу

K(I) = K(I) + 1 ‘оператор присвоювання

END IF ‘завершення оператора умовного переходу

NEXT I ‘завершення циклу по i

PRINT “K”;J;”=”;K(J) ‘виведення NEXT J ‘завершення циклу по j

FOR I = 1 TO M ‘оператор початку циклу по i

FOR J = 1 TO N ‘оператор початку циклу по j

IF A(I,J) = 0 THEN ‘оператор умовного переходу

C(I,J) = A(I,N) ‘оператор присвоювання

ELSE C(I,J) = A(I,J) ‘оператор присвоювання

END IF ‘завершення оператора умовного переходу

PRINT “C(”; I;”,”;J;“) =”;C(I,J) ‘виведення

NEXT J ‘завершення циклу по j

NEXT I ‘завершення циклу по i

END ‘кінець програми

Д

A =

ля розрахунків був використаний наступний двовимірний масив

Результат виконання програми:

M, N? 4, 4 _ У результаті виконання програми отримано:

K1 = 1 K2 = 2 K3 = 1 K2 = 2

C(1,1) = 3

C(1,2) = 6 одномірний масив К = 1; 2; 1; 2 и

C(1,3) = 2

C(1,4) = 2 двовимірний масив С

C

C =

(2,1) = 9

C(2,2) = 5

C(2,3) = 4

C(2,4) = 4

C(3,1) = 2

C(3,2) = 7

C(3,3) = 3

C(3,4) = 2

C(4,1) = 3

C(4,2) = 8

C(4,3) = 5

C(4,4) = 5