Вод/вывод елементов матрицы
Ввод элементов матрицы: DIMENSION A(20,20) DIMENSION A(20,20) ЛИБО READ *, M, N READ (5, *) M, N DO 11 I=1, M READ (5, *) ((A (I, J), J = 1, N), I =1, M) READ *, (А(I,J), J=1, N) 11 CONTINUE
Здесь должно выполняться условие М ≤ 20, и N≤ 20. Кроме вложенного неявного цикла, возможен ввод с использованием явного оператора цикла. Вывод элементов матрицы: PRINT*, ((A (I, J), J = 1, N), I =1, M) * Либо с автоматическим созданием файла на диске для вывода данных: WRITE (7,1) ((A (I, J), J = 1, N), I =1, M) 1 FORMAT (5X, 4F10.3)
Вложенные циклы Оператор цикла может содержать в себе другие операторы цикла: вложенные (или внутренние). В таком случае области вложенных операторов циклов должны полностью покрываться внешним циклом. Управляющие переменные операторов внутренних циклов должны быть различными, а их области не должны перекрывать друг друга. Эти положения можно изобразить схематично (рис.8):
……………………. …………………… ………………
Правильная организация циклов Неправильная–циклы перекрываются. Рис. 8
Конечный оператор цикла не может быть оператором: перехода, цикла, условным оператором, возврата, паузы и останова. Если цикл, по условию задачи, должен быть закончен одним из “запрещенных ” операторов, то в качестве конечного оператора цикла рекомендуется использовать оператор продолжения CONTINUE, разместив его после “запрещенного” оператора. Пример: вычислить сумму элементов каждого столбца прямоугольной матрицы. Суммы разметить в массиве S. В программе необходимо оператором DIMENSION зарезервировать место в памяти ЭВМ для массивов А и S, т.е. двумерный массив А(50, 40)и одномерный массив S(40). Тогда программа может иметь следующий вид:
PROGRAM SUMSTO DIMENSION A (50,40), S (40) PRINT*, ‘Введите количество строк N и столбцов К в массиве А’ READ (5, *) N, K PRINT*, ‘Введите элементы массива А по строкам ’ READ (5, *) ((A (I, J), J=1,K), I=1,N) PRINT*, ((A(I,J), J=1,K), I=1,N) * PRINT 50, ((A(I,J), J=1,K), I=1,N) * 50 FORMAT(2X, ' ИСХОДНАЯ МАТРИЦА A ' , / (2X,3F6.1))
SUM =SUM + A (J, I) 10 CONTINUE S (I) =SUM 15 CONTINUE PRINT *, ‘ СУММЫ ЭЛЕМЕНТОВ СТОЛБЦОВ’ PRINT*,‘ S (I)= ’, (S(I), I=1,K) END
В этой программе ввод элементов матрицы осуществляется по строкам, оператором ввода: READ(5, *) ((A (I, J), J=1,K), I=1,N) (неявный цикл). Затем занулением создается ячейка SUM, для суммирования элементов каждого столбца, что выполняется вложенным циклом DO. Сумма элементов каждого столбца заносится в массив S, в результате работы внешнего цикла DO. Когда все столбцы просуммированы и занесены в массив S, он (его содержимое) выводится на печать.
Задания к лабораторной работе № 4 Вариант № 1 Составить программу выборки минимального элемента из массива А (М, N). Использовать форматный вывод. ( М, N ≤ 20.) Вариант № 2 Составить программу выборки максимального элемента из массива А (М, N). Использовать форматный вывод. ( М, N ≤ 20.) Вариант № 3 Составить программу вычисления суммы отрицательных элементов из массива А (М, N). Использовать форматный вывод. ( М, N ≤ 20.) Вариант № 4 Составить программу вычисления суммы положительных элементов из массива А(М,N). Использовать форматный вывод. (М, N ≤ 20.) Вариант № 5 Составить программу вычисления количества положительных элементов в массиве А (М, N). Результат распечатать. (М, N ≤ 20.)
Вариант № 6 Составить программу вычисления количества отрицательных элементов в массиве А (М, N). Использовать форматный вывод. ( М, N ≤ 20.)
Популярное: Как вы ведете себя при стрессе?: Вы можете самостоятельно управлять стрессом! Каждый из нас имеет право и возможность уменьшить его воздействие на нас... Генезис конфликтологии как науки в древней Греции: Для уяснения предыстории конфликтологии существенное значение имеет обращение к античной... Почему стероиды повышают давление?: Основных причин три... ![]() ©2015-2024 megaobuchalka.com Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (331)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |