Главная Обратная связь

Дисциплины:






Пример выполнения задачи 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).

Блок – схема

 
 


           
 
 
   
 
   



- +

 
 

K(J)=K(J)+1

 
 


+

- +

C(i,J)=A(I,J)  
C(i,J)=A(i,N)  

Программа

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 ‘конец программы

 

Для расчетов был использован следующий двумерный массив

 

 

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

 

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(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

ЛІТЕРАТУРА

 

 

1. Информатика. Базовый курс, С.В. Симонович и др., СПб: Питер, 2002. – 640 с.

2. Светлозарова Г.И., Мельников А.А., Козловский А.В. Практикум по программированию на языке Бейсик. -М.: Наука, 1988

3. Сборник задач по базовой компьютерной подготовке / Под общей ред. И.Н. Котаровой. –М.: МЭИ, 1998.

4. Сафронов И. Бейсик в задачах и примерах. –СПб.:БХВ-Петербург, 2000.

5. Мельникова О.И., Бонюшкина А.Ю. Начала программирования на языке Qbasic. –М.: ЭКОМ, 2000.

6. Конспект лекций по курсу ''Информатика'', ОДАБА, Одеса, 2007.

7. Методические указания ‘‘Основы программирования на языке Visual Basic’’ (для студентов всех специальностей), Плотников А. В., Дызов К. Г., Комлева Т. А., ОДАБА, 2003, - 94 с.

 

 





sdamzavas.net - 2020 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...