Добавил:
vk.com Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
6
Добавлен:
17.11.2024
Размер:
695.79 Кб
Скачать

+Нижегородский Государственный Технический Университет Имени Р.Е. Алексеева Кафедра «Энергетические установки и тепловые двигатели» Дисциплина «Компьютерные технологии» Лабораторная работа №5 Тема: Двумерные массивы Вариант №15

Выполнил: Туев А.В. 23-ЭУД-1 Проверила: Шубина Н.В.

Нижний Новгород 2023

  1. Постановка задачи (1) Даны массива A (4,4) вещественны чисел. 1) Вычислить среднее арифметическое положительных элементов всей матрицы. 2) Вычислить среднее арифметическое положительных элементов главной диагонали. 3) Если среднее арифметическое положительных элементов всей матрицы окажется больше – поменять местами первый и последний её элементы. Если же большим окажется среднее арифметическое положительных элементов главной диагонали – поменять местами диагонали в матрице. 4) Поменять местами первый элемент массива C и минимальный элемент массива B. 5) Вывести на экран массивы С и B после перестановки, сдублировать вывод в файл. Исходный массив:

    Вход в print_d(V, x[n][m], n1, m1)

  2. Блок-схема 1) Вспомогательная блок-схема для вывода двумерного массива:

Описание i, j, fresult

i = 0

“Массив V[n1][m1]:”

i < n1

j = 0

j < m1

fresult << x[i][j] x[i][j]

j++

i++

fresult.close

Конец

Вход в print_o(V, x[n], n1)

Описание i, fresult

“Массив V[n1]:”

i = 0

i < n1

fresult << x[i] x[i]

i++

fresult.close

Конец

Начало

Описание переменных: const int n = 4, const int m = 4 double a[n][m], c[n], spm = 0, spgd = 0, sapm, sapgd, tmp, ppp = 1; int i, ic = 0, j, ma = 0, gd = 0; fstream fa, fresult;

2) Вспомогательная блок-схема для вывода одномерного массива: 3) Основная блок-схема:

j < m

i < n

j = 0

i = 0

fa.open

fa >> a[i][j]

j++

i++

fa.close

print_d(‘a’, a, n, m)

i = 0

i < n

i < n

i = 0

i++

j++

spm = spm + a[i][j] ma++

a[i][j] > 0

j < m

j = 0

a[i][i] > 0

fresult.open

spgd = spgd + a[i][i] gd++

“Среднее арифметическое положительных элементов всей матрицы:” sapm “Среднее арифметическое положительных элементов главной диагонали:” sapgd

i++

fresult.close

sapm = spm / sa sapgd = spgd / gd

sapm > sapgd

tmp = a[0][0] a[0][0] = a[n-1][m-1] a[n-1][m-1] = tmp

i = 0

i < n

i++

print_d(‘a’, a, n, m)

j = 0

j < m

c[ic] = a[2][j] ic++

tmp = a[i][i] a[i][i] = a[i][n-1-i] a[i][n-1-i] = tmp

j++

print_o(‘c’, c, ic)

i = 0

i < n

a[i][n-1-i] > 0

ppp = ppp * a[i][n-1-i]

i++

fresult.open

“Произведение положительных элементов побочной диагонали:” ppp

fresult.close

Конец

  1. Листинг программы на С++

  2. Результаты программы на С++

  3. Программа в Mathcad

Соседние файлы в папке 5 ЛР