GVA SUPPORT

Відповідь на запитання № 1308385155
Text:
	ФІО = Горбаченко В.А.

 Запитання:/*
    Для заданої дійсної матриці А розмірності n визначити, чи э вона кососиметричною 
    (15 балів)
*/

#include <iostream>
#include <cstdlib>



using namespace std;
//===========================================================================
int EnterN(){ // просимо користувача ввести Н яке задовольнить умову циклу ВАЙЛ
 int n;         // і повертаємо його
    do{
        cout<<" -> Enter N [N>=2]:";   
            cin>>n;
    } while (n<2);
    cout<<endl;
    return n;
}
//===========================================================================
void PrintMatrix(double *A,int n){ // фнк виводить матрицю на екран
 // нічого не повертає. приймає вказівник на перший елемент та розмірність квадратної 
 // матриці 
     for (int i = 0 ; i < n ; i++){
         for (int j = 0 ; j < n ; j++){
             cout<<*(A+i*n+j)<<"\t ";
         }
         cout<<endl;
     }
     cout<<endl;
     return ;
}
//===========================================================================
void EnterMatrix(double *A,int n){// зчитує кв. матрицю. Аналогічно до передньої функ
     for (int i = 0 ; i < n ; i++){
         for (int j = 0 ; j < n ; j++){           
             cout<<"Enter Matrix ["<<j+1<<"]x["<<i+1<<"] = ";
             cin>>*(A+i*n+j);           
         }
     }
     return ;
}
//===========================================================================
void PrintTrueFalse(bool a){// виводить на екран в залежності від а ТРУ чи ФОЛС
    if (a) cout<<" TRUE "; else cout<<" FALSE ";    
}
//===========================================================================
bool bool_CosoMatrix(double *A,int n){// функція приймає аналогічні параметри до
// попередніх функцій
// повертає ТРУ, якщо матриця кососиметрична, інакше - ФОЛС

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

                if ((*(A+i*n+j))!=-(*(A+j*n+i))) {
                                return false;             
                }
         }
     }
     return true;
}
//===========================================================================
int main(){
    int n=EnterN();
    
    double *a=new double [n*n];// ств динамічний масив
    
    EnterMatrix(a,n);    // заповнюємо матрицю
    PrintMatrix(a,n);    // виводимо матрицю
    
    cout<<" COSOMATRIX = ";
    PrintTrueFalse(bool_CosoMatrix(a,n));// виводимо, чи матрися кососимтрична, чи ні
    cout<<endl;
    delete []a; // звільнюємо виділену пам'ять
      
    system("PAUSE");
    
    return 0;
}



====================================	
Ваша відповідь