- •Текстовий редактор microsoft word Мета роботи
- •Завдання
- •Вказівки до виконання завдання
- •Електронні таблиці Excel Мета роботи
- •Завдання
- •Вказівки до виконання завдання
- •Лабораторна робота № 3
- •Program name
- •Неявний опис даних реалізується за допомогою оператора
- •Implicit тип q, (r t),
- •Read(*,*) список уведення
- •V. Вивід даних здійснюється за допомогою оператора write(*,*) список аргументів
- •Write(*,*) ‘Уведіть a b c’
- •10 Write(*,*) 'Уведіть координати точки X, у'
- •Read(m,*) a
- •Обчислення визначеного інтеграла Мета роботи
- •Завдання
- •Вказівки до виконання завдання
- •Циклічні алгоритми. Обчислення суми послідовності чисел Мета роботи
- •Завдання
- •Вказівки до виконання завдання
- •Робота з одномірними масивами. Обчислення максимуму,
- •Робота з одномірними масивами.
- •Робота з двовимірними масивами.
- •Робота з двовимірними масивами.
- •Підпрограма subroutine і загальні блоки Мета роботи
- •Завдання
- •Вказівки до виконання завдання
- •Тут ex – символьне ім'я функції, (x1, x2, …, xn) – список формальних параметрів функції.
- •Common [/ ім'я 1/], список аргументів, [/ ім'я 2/], список аргументів
- •Додаток 3
- •Продовження додатку 5
- •Продовження додатку 5
- •Додаток 6
- •Продовження додатку 6
- •Додаток 7
- •Продовження додатку 9
- •Додаток 10 Завдання до лабораторної роботи № 9
- •Продовження додатка 10
- •Додаток 11 Завдання до лабораторної роботи № 10
- •Продовження додатка 11
- •Додаток 12 Завдання до лабораторної роботи № 11
- •Додаток 13 Завдання до лабораторної роботи № 12
- •Список літератури
Робота з двовимірними масивами.
ОБЧИСЛЕННЯ МАКСИМУМУ, МІНІМУМУ,
РОБОТА З ЕЛЕМЕНТАМИ МАСИВУ
Мета роботи
Метою даної лабораторної роботи є придбання навичок обробки двовимірних масивів: введення / виведення елементів, зміни елементів, визначення максимальних і мінімальних значень елементів масиву.
Завдання
1. Скласти алгоритм і написати програму обробки двовимірного масиву згідно варіанту. Введення масиву здійснити з файлу даних. Варіанти завдань наведені у Додатку 11. Номер варіанта призначається викладачем.
2. Виконати налагодження програми та її тестування.
3. Скласти звіт про роботу.
Вказівки до виконання завдання
Як було вказано раніше, масив – це послідовність перемінних одного типу, положення яких визначається одним чи декількома індексами. Якщо уявити двовимірний масив у вигляді матриці, то розташування елемента визначається двома індексами. Перший індекс визначає номер рядка, другий - номер стовпця. У пам'яті ЕОМ масив розміщається однорозмірно «по стовпцях», тобто таким чином, що спочатку змінюється перший індекс, потім другий і т.д. Наприклад, масив А(2, 2) розташовується в пам'яті в такий спосіб:
А(1, 1), А(2, 1), А(1, 2), А(2, 2).
З огляду на спосіб розташування масиву в пам'яті ЕОМ, доцільно організовувати введення масиву одним із двох способів:
1. Використовуючи конструкцію неявного циклу в списку введення.
Зчитування двовимірного масиву А(10, 20) буде організовано наступним оператором:
READ(1,*) ((А(I,J), J=1,20),I=1,10)
2. Використовуючи циклічний алгоритм.
При цьому способі оператор уведення розташовується усередині вкладених операторів циклу. Кількість операторів циклу відповідає розмірності масиву. Уведення двомірного масиву, наприклад, А(10, 20), буде виглядати так
DO 1 I=1,10
DO 2 J=1, 20
READ(1,*) X(I, J)
2 CONTINUE
1 CONTINUE
В операторах зчитування READ номер 1 позначає номер файлу даних, з якого здійснюється зчитування масиву.
Для обробки елементів двовимірного масиву необхідно використовувати цикли. Якщо елементи обробляються без урахування рядків або стовпців, то порядок відкриття циклів не має значення. Якщо враховуються рядки або стовпці (наприклад, задача визначення максимального елемента в кожному рядку), то перший повинен відкриватися цикл по тому індексу масиву, який розглядається. Алгоритм визначення максимального чи мінімального значення ідентичний наведеному для одновимірного масиву.
Способи обробки елементів двовимірних масивів розглянемо на прикладах.
Приклад 1. Дано масив цілих чисел A(10,5). Поміняти рядки і стовпці місцями, подвоївши елементи масиву.
PROGRAM EXAMPLE
INTEGER A(10, 5), R, I, K
OPEN(1,FILE=’A.DAT’, STATUS=’OLD’)
READ(1,*) ((A(I, J), I=1,10), J=1, 5) ! Введення елементів масиву
DO 20 I=1, 10
DO 30 J=I, 5
R=A(J, I) ! перестановка
A(J, I) = 2 * A(I, J) ! елементів
A(I, J) = 2 * R ! місцями
30 CONTINUE
20 CONTINUE
С Роздруківка елементів масиву у вигляді матриці
DO 40 I=1, 10
DO 50 J=1, 5
WRITE(*,’(I6\)’) A(I, J) ! роздруківка рядка масиву
50 CONTINUE
WRITE(*, *) ! перехід на інший рядок
40 CONTINUE
END
Коментарі до програми: у циклі DO, що змінює індекс стовпця, початковим значенням є індекс рядка. Це дозволяє виключити повторну перестановку елементів масиву.
Приклад 2. Дано масив дійсних чисел а(4, 5). Знайти добуток мінімальних елементів стовпців.
PROGRAM EXAMPLE
REAL A(4, 5), MIN, PR
OPEN(1,FILE=’A.DAT’, STATUS=’OLD’)
READ(1,*) ((A(I, J), I=1,4), J=1, 5) ! Введення елементів масиву
PR=1.
DO 20 J=1, 5 ! цикл, що змінює індекс стовпця
MIN = A(1, J) ! приймаємо, що перший елемент стовпця буде мінімальним
DO 30 I=1, 4 ! цикл, що змінює індекс рядків
IF( A(I, J).LT. MIN) MIN=A(I, J)
30 CONTINUE
PR=PR*MIN ! визначаємо добуто мінімальних значень
20 CONTINUE
WRITE(*,’(A, F6.1)’) ‘Добуток мінімальних значень стовпців PR=’, PR
END
Звіт про роботу повинний містити стислий опис роботи, алгоритм розв’язання завдання, текст програми і результати її роботи.
Лабораторна робота № 11