[공학]프로그래밍 언어론 자바로 역행렬구하기
- 최초 등록일
- 2006.10.25
- 최종 저작일
- 2006.09
- 10페이지/ 한컴오피스
- 가격 1,000원
소개글
역행렬 구하는 방법 조사,
조사 후 실행시간 저장공간 고려 프로그래밍
최적화 방법 조사
역행렬 구하는 프로그램을 자바로 구현했습니다.
txt파일로 행렬식을 입력받아 결과를 출력합니다.
class Cal extends Value {
Cal(int n){
//a = new double[n][n];
b = new double[n][n];
}
void CallValue(int n){
for(int i=0; i
for(int j=0; j
if(i==j) b[i][j] = 1;
else b[i][j] = 0;
}
}
}
void CalValue(int n,double a[][]){
/*가우스-조단 소거법*/
for(int i=0;i
double c=a[i][i];
for(int j=0;j
a[i][j]=a[i][j]/c;
b[i][j]=b[i][j]/c;
컴파일 실행환경
JAVA SDK1.5
class Cal extends Value {
Cal(int n){
//a = new double[n][n];
b = new double[n][n];
}
void CallValue(int n){
for(int i=0; i<n; i++){
for(int j=0; j<n; j++){
if(i==j) b[i][j] = 1;
else b[i][j] = 0;
}
}
}
void CalValue(int n,double a[][]){
/*가우스-조단 소거법*/
for(int i=0;i<n;i++){
double c=a[i][i];
for(int j=0;j<n;j++){
a[i][j]=a[i][j]/c;
b[i][j]=b[i][j]/c;
본문내용
◎ 역행렬 구하는 법
1. A B = I 를 이용하는 방법
=
A B I
A의 1행과 B의 1열의 계산
(1×a) + (2×d) + (3×g) = 1
A의 1행과 B의 2열의 계산
(2×a) + (9×b) + (7×c) = 0
A의 2행과 B의 2열의 계산
(2×b) + (9×e) + (2×h) = 1
이와 같은 식으로, 행과 열의 숫자가 같을 경우는 1, 다를 경우는 0.
각 계산 시 미지수 3개에 식이 3개이므로 미지수 값 구할 수 있음.
이때 구해지는 B가 A의 역행렬이다.
장점 : 역행렬의 정의를 이용한 풀이라 이해하기가 쉽고, 로직이 쉽다.
단점 : 연립방정식을 이용한 풀이.
The cost of computation
a+2d+3g=1 a+2d+3g=1
3a+9d+2g=0 3d-7g=-3
2a+7d+3g=0 3d-6g=-2 g=1
참고 자료
없음