Кто может ? Цель: написать программу, реализующей алгоритм, указанный в варианте, а также описать оценку вычислительной сложности данной программы.

Вариант 7
Составить программу, в которой
- организовать ввод матрицы размера mxn из целых чисел;
- вычислить сумму элементов, которые стоят по периметру матрицы;
- переставить элементы второго столбца в обратном порядке;
- организовать вывод матрицы в виде отдельной функции

Alisascol Alisascol    2   07.02.2022 00:55    0

Ответы
ехуотличница ехуотличница  07.02.2022 01:00

/ deit.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <iostream>

#include <iomanip>

#include <math.h>

#include <locale>

using namespace std;

void vvod_matr(int mas[][4], const int &n, const int &m)

{

   for(int i = 0; i < n; i++)

       for(int j = 0; j < m; j++)

       {

           wcout << L"Введите элемент матрицы[" << i << "][" << j << "]: ";

               cin >> mas[i][j];

       }

}

void print(int mas[][4], const int &n, const int &m)

{

   for(int i = 0; i < n; i++)

   {

       cout << "\n\t";

       for(int j = 0; j < m; j++)

       {

           cout << setw(3) << setiosflags(ios::left) << mas[i][j];

       }

   }

}

void _tmain()

{

   wcout.imbue(locale(".866"));

   

   const int n = 4, m = 4;

   int mas[n][m];

   wcout << L"Введите матрицу:\n";

       vvod_matr(mas, n, m);

   wcout << L"\nВведенная матрица:\n";

       print(mas, n, m);

   /* умножаем четные элементы матрицы*/

   int prois_chet = 1;

   for(int i = 0; i < n; i++)

       for(int j = 0; j < m; j += 2)

       {

           prois_chet *= mas[i][j];

       }

   wcout << L"\n\nПроизведение четных элементов матрицы: " << prois_chet;

   /*упорядочиваем элементы второго столбца по возрастанию*/

   int stb = 1, t;

   for(int i = 0; i < n-1; i++)

       for(int j = i+1; j < n; j++)

       {

           if(mas[i][stb] < mas[j][stb])

           {

               t = mas[i][stb];

               mas[i][stb] = mas[j][stb];

               mas[j][stb] = t;

           }

       }

   wcout << L"\n\nУпрядоченная матрица:\n";

       print(mas, n, m);

   cout << "\n\n";

}

Объяснение:
программа большая 74 строчки поэтому сайт может не так её отобразить

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика