Оброблення двовимірного масиву.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
Не вказано
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
Основи програмування та алгоритмічні мови

Частина тексту файла (без зображень, графіків і формул):

Лабораторна робота № 7 Оброблення двовимірного масиву 1. Порядок виконання роботи 1.1. Скласти алгоритмічною мовою Фортран програму оброблення двовимірного масиву. 1.2. Відлагодити на комп’ютері складену програму. 1.3. Ввести числові дані та отримати результат. 1.4. Скласти звіт про роботу й захистити його. 2. Вказівки до виконання роботи 2.1. Приклади задач оброблення двовимірних масивів При розв’язуванні різноманітних математичних та інженерних задач (матрична алгебра, оброблення експериментальних даних, виконання багатьох варіантів розрахунків тощо) виникає потреба у використанні двовимірних масивів. Розглянемо декілька характерних прикладів задач оброблення двовимірних масивів. Приклад 1. Для заданої матриці А, яка містить N рядків і М стовпців, необхідно обчислити суму значень елементів її кожного рядка. Результат оформити у вигляді одновимірного масиву S. Обчислення суми значень елементів кожного рядка матриці виконується за формулою  EMBED Equation.DSMT4  де і – біжучий номер рядка, j – біжучий номер стовпця. Для обчислення суми елементів і-го рядка необхідно, зафіксувавши його номер і, змінювати номер j стовпця матриці від 1 до M та обчислити суму значень елементів даного рядка. Один із можливих варіантів програми: У цій програмі задано розмір двовимірного масиву A(30, 20) і розмір одновимірного масиву S(30), тому максимальне значення N кількості рядків не може перевищувати 30, а максимальне значення М кількості стовпців не може перевищувати 20. При необхідності розміри масивів можна змінити. Перед запуском програми на виконання необхідно створити файл вхідної інформації DANI.DAT і занести до нього вхідні дані у довільному форматі таким чином: у першому рядку файла задати кількість рядків матриці А, у другому рядку – кількість її стовпців, у третьому рядку файла задати перший рядок матриці А, у четвертому – її другий рядок і т.д. Наприклад, матриця, яка містить 4 рядки і 3 стовпці, повинна бути задана у вигляді: 4 3 У програмі організовано два цикли – внутрішній за параметром j, за допомогою якого змінюється номер стовпця, і зовнішній за параметром і, за допомогою якого змінюється номер рядка. Очевидно, що перед початком обчислення суми елементів кожного рядка, комірки пам’яті, де буде проводитися підрахунок, необхідно “занулити”. Результати обчислень надрукується на екрані монітора і будуть містити інформацію про номер рядка матриці та суму його елементів. Приклад 2. Для матриці В, яка складається з N рядків і М стовпців, підрахувати кількість від’ємних елементів у кожному стовпці. Вхідна інформація задана у файлі DN.DAT у вигляді, аналогічному до наведеного. Результати оформити у вигляді одновимірного масиву і записати до файла REZ.DAT. Один із можливих варіантів програми: Тут, як і у попередній програмі, для обчислення кількості від’ємних елементів у кожному стовпці організовано два цикли. У зовнішньому циклі організовано вибір стовпця, а у внутрішньому – логічний умовний оператор передбачає для від’ємних елементів вибраного стовпця перехід на обчислення їх кількості. Результати обчислень надрукується у файлі вихідної інформації, де буде вказано номер стовпця матриці та кількість його від’ємних елементів. Приклад 3. Для матриці C скласти фрагмент програми визначення максимального за модулем елемента та його порядкового номера рядка і стовпця. Один із можливих варіантів фрагменту програми: Тут для визначення максимального за модулем елемента припускаємо, що елемент масиву С(1, 1) є максимальним і його значення за модулем присвоюємо змінній Amax. Очевидно, що у цьому випадку номер рядка та номер стовпця елемента С(1, 1) рівні 1. Далі кожен модуль елемента масиву С(i, j)  EMBED Equation.DSMT4  порівнюємо з Amax, тобто перевіряємо умову |C(i, j)| > Amax. У випадку, коли умова справджується, то аналізоване значення С(i, j) є найбільшим за модулем і його присвоюємо змінній Amax та фіксуємо порядковий номер i рядка й порядковий номер j стовпця масиву. Якщо матриця містить декілька однакових найбільших за модулем елементів, то наведеним фрагментом програми буде знайдений останній з них (тут слід мати на увазі, що знаходження цього елемента здійснюється по рядках). Рекомендуємо читачеві внести корективи у цей фрагмент програми з метою знаходження першого найбільшого за модулем елемента матриці. 2.2. Завдання За номером варіанту з таблиці 7 вибираємо назву матриці, її розміри та розташування у таблиці 8. Наприклад, для варіанту № 30, вибираємо матрицю PASS, яка містить N = 5 рядків і M = 4 стовпці. Її елемент PASS(1, 1) розташований на перетині І = 2 рядка та J = 4 стовпця таблиці 8. Тому ця матриця буде такою: Вибрану матрицю слід записати до файла DaniL7.dat у довільному форматі. Для заданої файлі DaniL7.dat матриці при В = –1 необхідно: 1. Знайти максимальне значення елементу матриці. 2. Знайти максимальні значення модулів елементів матриці у кожному рядку. 3. Знайти мінімальні значення елементів матриці у кожному стовпці. 4. Знайти номер рядка і стовпця елементу матриці з мінімальним значенням. 5. Знайти номери рядків матриці з максимальним значення елементу у її кожному стовпці. 6. Знайти номери стовпців матриці з мінімальним значення елементу у її кожному рядку. 7. Обчислити кількість елементів матриці, які більші від В. 8. Обчислити кількість елементів кожного рядка матриці, які не більші від В. 9. Обчислити кількість елементів кожного стовпця матриці, які менші від В. 10. Обчислити суму елементів матриці. 11. Обчислити суму елементів матриці, більших від В. 12. Обчислити суму елементів матриці, для яких добуток i·j номерів їхніх рядка і стовпця  EMBED Equation.DSMT4   EMBED Equation.DSMT4 є парним. 13. Обчислити добуток елементів матриці, відмінних від нуля і для яких добуток i·j номерів їхніх рядка і стовпця  EMBED Equation.DSMT4   EMBED Equation.DSMT4 є непарним. 14. Обчислити суму елементів матриці, записаних у її непарних рядках. 15. Обчислити добуток елементів матриці, відмінних від нуля і записаних у її парних стовпцях. 16. Обчислити суму елементів матриці, записаних на перетині її парних рядків та непарних стовпців. 17. Обчислити кількість додатних елементів матриці, записаних на перетині її непарних рядків та парних стовпців. 18. Знайти різницю між кількістю додатних та від’ємних елементів матриці. 19. Обчислити суму додатних та добуток від’ємних елементів матриці. 20. Обчислити добуток елементів матриці, відмінних від нуля. 21. Обчислити добуток елементів матриці, відмінних від нуля і більших від В. 22. Порахувати кількість додатних елементів матриці. 23. Порахувати кількість від’ємних та нульових елементів матриці. 24. Порахувати кількість елементів матриці, модуль яких більший від одиниці. 25. Знайти номери рядка та стовпця елементів матриці, які дорівнюють заданому В. 26. Знайти кількість елементів матриці, які дорівнюють нулю, і їх номери рядка та стовпця. 27. Знайти номери рядка та стовпця додатних елементів матриці. 28. Знайти номери рядка та стовпця від’ємних елементів матриці, більших від В. 29. Знайти номери рядка та стовпця першого і останнього додатних елементів матриці. 30. Знайти номери рядка та стовпця другого і передостаннього від’ємних елементів матриці. Завдання підвищеної складності. Для матриці, заданої у файлі DaniL7.dat, необхідно: 1*. Розташувати елементи кожного рядка масиву у порядку зростання їхніх значень. 2*. Розташувати елементи кожного стовпця масиву у порядку спадання їхніх значень. 3*. Розташувати елементи кожного стовпця масиву у порядку зростання значень їхніх модулів. 4*. Розташувати елементи кожного рядка масиву у порядку спадання значень їхніх модулів. 5*. Вивести порядкові номери елементів кожного рядка масиву у порядку зростання їхніх значень. 6*. Вивести порядкові номери елементів кожного стовпця масиву у порядку спадання їхніх значень. 7*. Вивести порядкові номери кожного стовпця елементів масиву у порядку зростання значень їхніх модулів. 8*. Вивести порядкові номери кожного рядка елементів масиву у порядку спадання значень їхніх модулів. Таблиця 7 Назва, розміри матриці та її розташування у таблиці 8 Таблиця 8 Вибір матриці
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!