성균관대 C프로그래밍-가우스소거법
- 최초 등록일
- 2014.04.23
- 최종 저작일
- 2012.06
- 10페이지/ MS 워드
- 가격 1,500원
목차
1. 실습내용
2. 실습목적
3. 과제 해결방안
4. 코드분석
5. 실행결과
6. 결론
7. Appendix. 전체 코드
본문내용
1. 실습내용
가우스 소거법의 개념을 이용하여 다음 세 개의 함수를 구현한다.
① ForwardElim 함수
주어진 행렬에 대하여 전진소거법을 실시한다. 만약 수행 중에 대각 성분이 0이 나오면 Pivoting 함수를 호출하여 행을 교환한다.
② BackSubst 함수
전진소거법이 끝난 행렬에 대하여 후진 대입법을 통하여 각각의 해를 구한다.
③ Pivoting 함수
전진소거법을 수행하는 중에 대각성분이 0이 나오면 호출되는 함수로써 대각요소가 0이 아닌 행과 0인 행을 교환하는 함수이다.
2. 실습목적
이번 실습에서는 가우스 소거법을 컴퓨터로 계산하는 함수들을 구현한다. 가우스 소거법에 대한 계산 방법을 알고 그 원리를 이용하여 주어진 행렬을 계산하는 함수를 구현할 수 있는 능력을 갖춘다.
<중 략>
2) 선언한 변수 및 함수에 대한 추가 설명
temp = aMat[StartRow][i];
aMat[StartRow][i] = aMat[StartRow+1][i];
aMat[StartRow+1][i] = temp;
임시 저장공간인 temp를 사용해서 임의의 행을 통째로 저장한다. 그 행을 다음 행과 교환하는 작업을 수행한다. 이 것은 swap 함수와 매우 유사하다.
3) 주요내용 설명
가우스 소거법
연립 방정식의 해법 중 하나로서 보통 의미의 소거법을 조직적으로 정리한 것이다.
전진소거법
우선 1행 1열의 값을 이용하여 1열에 있는 1행을 제외한 모든 행의 값들을 0으로 만들어준다. 다음 행으로 넘어가서 같은 작업을 수행한다. 이 작업은 상수 값을 제외한 마지막 열에 도달할 때까지 반복한다.
후진대입법
그 이후에 가장 마지막 행의 상수 값이 아닌 마지막 열의 값을 1로 만들어준 후에 그 열에 해당하는 값들을 모두 0으로 만들어준다. 이 작업 또한 첫 번째 행의 첫 번째 열에 도달할 때까지 반복한다.
최종적으로 나온 값들을 이용하여 해를 구하는 방법이 가우스 소거법이다.
위의 설명을 그림으로 표현해 보면 다음과 같다.
참고 자료
없음