[윈도우용]MATRIX Class의 + * 연산자에 대한 행렬의 덧셈, 행렬의 상수 곱셈, 행렬과 행렬의 곱셈을 하는 부분을 추가하여 프로그램 작성
본 자료는 미리보기를 지원하지 않습니다.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
해당 자료는 3페이지 까지만 미리보기를 제공합니다.
3페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[윈도우용]MATRIX Class의 + * 연산자에 대한 행렬의 덧셈, 행렬의 상수 곱셈, 행렬과 행렬의 곱셈을 하는 부분을 추가하여 프로그램 작성에 대한 보고서 자료입니다.

목차

1. 문제 정의

2. 문제 분석

3. 프로그램 디자인

4. 결과 화면

5. 소스 코드

본문내용

1. 문제 정의

=> MATRIX Class의 + * 연산자에 대한 행렬의 덧셈, 행렬의 상수 곱셈, 행렬과 행렬의 곱셈을 하는 부분을 추가하여 프로그램 작성

2차원의 배열을 이해해야 하며 call by value, call by reference, call by pointer를 이해해야 한다.
연산자 +를 써서 행렬의 덧셈을 구현하고
연산자 *를 써서 행렬과 상수의 곱셈을 구현하며
연산자 *를 써서 행렬과 행렬간 곱셈을 구현한다.

2. 문제 분석
게시판에 있던 기존의 프로그램을 분석해보면

Matrix& Matrix::transpose()
{
Matrix* temp = new Matrix(colsize , rowsize);

for (int j=0 ; j < colsize ; j++)
for (int i=0 ; i < rowsize ; i++)
temp->setElement(j , i, data[i][j]);

return *temp;
}
=> 이 부분을 통해 2x3 행렬을 3x2 로 바꾸는 전치행렬을 하는 함수입니다.
[1 2]
[3 2] => [1 3 2]
[2 3] => [2 2 3]

다음으로 main.cpp 파일을 보면

ma.setMatrix( a , 2, 3);
ma.print();
// 2x3행렬 출력

Matrix temp = ma.transpose();
temp.print();
// 2x3행렬을 transpose함수를 이용하여 전치행렬을 구현한 함수를 출력

......

3. 프로그램 디자인
=> 다음으로 연자산 * +에 대하여 어떻게 구현해야 하는가입니다.
해더파일에
Matrix operator+(Matrix &opr);
Matrix operator*(int scalar);
Matrix operator*(Matrix& opr); 추가

① 연산자 +
Matrix Matrix::operator+(Matrix& opr)
{
Matrix* temp = new Matrix(colsize , rowsize);
for(int i = 0; i < rowsize; i++)
{
for(int j = 0; j < colsize; j++)
{
temp->setElement(i, j, data[i][j] + opr.getElement(i,j));
}
}
return *temp;
}
  • 가격2,000
  • 페이지수11페이지
  • 등록일2006.11.29
  • 저작시기2006.5
  • 파일형식압축파일(zip)
  • 자료번호#378147
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니