728x90
#include<iostream>
using namespace std;

class Matrix {
    int arr[4];
public:
    Matrix() { ; }
    Matrix(int a, int b, int c, int d) { arr[0] = a; arr[1] = b; arr[2] = c; arr[3] = d; }
    void show();
    void operator>> (int x[]);
    void operator<< (int y[]);
};

void Matrix::show() {
    cout << "Matrix" << " = { ";
    for (int i = 0; i < 4; i++) cout << this->arr[i] << ' ';
    cout << "}" << endl;
}

void Matrix::operator>> (int x[]) {
    for (int i = 0; i < 4; i++) {
        x[i] = this->arr[i];
    }
}

void Matrix::operator<< (int y[]) {
    for (int i = 0; i < 4; i++) {
        this->arr[i] = y[i];
    }
}

int main() {
    cout << "2018305065 전유정" << endl << endl;

    Matrix a(4, 3, 2, 1), b;
    int x[4], y[4] = { 1,2,3,4 }; // 2차원 행렬의 4 개의 원소 값 
    a >> x; // a의 각 원소를 배열 x에 복사. x[]는 {4,3,2,1} 
    b << y; // 배열 y의 원소 값을 b의 각 원소에 설정 

    for (int i = 0; i < 4; i++) cout << x[i] << ' '; // x[] 출력 
    cout << endl;
    b.show();
}

 

#include<iostream>
using namespace std;

class Matrix {
    int arr[4];
public:
    Matrix() { ; }
    Matrix(int a, int b, int c, int d) { arr[0] = a; arr[1] = b; arr[2] = c; arr[3] = d; }
    void show();
    friend void operator>> (Matrix& a, int x[]);
    friend void operator<< (Matrix& b, int y[]);
};

void Matrix::show() {
    cout << "Matrix" << " = { ";
    for (int i = 0; i < 4; i++) cout << this->arr[i] << ' ';
    cout << "}" << endl;
}

void operator>> (Matrix& a, int x[]) {
    for (int i = 0; i < 4; i++) {
        x[i] = a.arr[i];
    }
}

void operator<< (Matrix& b, int y[]) {
    for (int i = 0; i < 4; i++) {
        b.arr[i] = y[i];
    }
}

int main() {
    cout << "2018305065 전유정" << endl << endl;

    Matrix a(4, 3, 2, 1), b;
    int x[4], y[4] = { 1,2,3,4 }; // 2차원 행렬의 4 개의 원소 값 
    a >> x; // a의 각 원소를 배열 x에 복사. x[]는 {4,3,2,1} 
    b << y; // 배열 y의 원소 값을 b의 각 원소에 설정 

    for (int i = 0; i < 4; i++) cout << x[i] << ' '; // x[] 출력 
    cout << endl;
    b.show();
}

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기