Задана матрица размером NxM. Получить массив B, присвоив его k- му элементу значение 1 или 0.

Условие задачиЗадана матрица размером NxM. Получить массив B , присвоив его k- му элементу значение 1, если  строка матрицы симметрична, и значение 0- в противном случае.
Листинг (исходник) программы:
[свернуть]


			#include <iostream>
		#include <locale>
		#include <conio.h>
		#include <time.h>
		using namespace std;
		
			
		void createMassivB( bool* Arr, int j, bool flag)
		{
		    Arr[j] = flag;
		}
		
			
		int main()
		{
		    setlocale(LC_ALL,"Russian");
		    int n(0),m(0);
		    cout<<"Введите размеррность матрицы: ";cin>> n >> m;
		    cout<<endl;
		
			
		    int** Mass = new int* [n]; // Объявление динамического массива
		    for(int i=0; i<n; i++)
		        Mass[i] = new int [m];
		
			
		    srand((int)time(0));
		    for(int i=0; i<n; i++)
		        for(int j=0; j<m; j++)
		            Mass[i][j] = rand()%5; //Присваивание значений элементам матрицы
		
			
		    cout << "Исходная матрица: " << endl << endl;
		    for(int i(0); i<n; i++)//Вывод исходной матрицы
		    {
		        for(int j=0; j<m; j++)
		            if(j==m-1)
		                cout << Mass[i][j] << \' \' << endl;
		            else 
		                cout << Mass[i][j] << \' \';
		    }
		
			
		    bool* MassB = new bool [n]; // Объявление динамического массива в виде булевой маске
		    for(int j=0; j<m; j++)// Истинные значения по всем массиве
		            MassB[j] = false; 
		
			
		    int k;
		    int flagNechet = m%2; 
		    for(int i=0; i<n; i++)
		    {
		        k=true;
		
			
		        for(int j=0; j<m/2; j++)
		        {
		            if (Mass[i][j]==Mass[i][m-j-1])
		                 k = true;
		            else
		            {
		                k = false;
		                break;
		            }
		        }
		        MassB[i]=k;
		    }
		
			
		    cout<<endl;
		    for(int j=0; j<n; j++)
		    {
		        if(j==n-1)
		            cout << MassB[j] << \' \' << endl;
		        else 
		            cout << MassB[j] << \' \';
		    }
		
			
		    _getch();
		    return 0;
		}

		
	

 
‘ style=’default’ collapse_link=’true’]

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *