Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Завдання. Метою даної лабораторної роботи є придбання навичок обробки двовимірних масивів: введення / виведення елементів




Мета роботи

РОБОТА З ЕЛЕМЕНТАМИ МАСИВУ

Метою даної лабораторної роботи є придбання навичок обробки двовимірних масивів: введення / виведення елементів, зміни елементів, визначення максимальних і мінімальних значень елементів масиву.

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

РОБОТА З ДВОВИМІРНИМИ МАСИВАМИ.

ВИЗНАЧЕННЯ КРАТНОСТІ ЕЛЕМЕНТІВ, СОРТУВАННЯ МАСИВУ

 




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 372; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.