- CASIO 570
[fx-570] 1차 연립 방정식 풀기 (feat. 반복법 Iteration, Gauss-Seidel 가우스-자이델 방법)
출처 : http://www.marco.com.my/my/doc/fx-570es.pdf
문제
다음 연립방정식을 Gauss-Seidel 법으로 풀어라.
5x1 - x2 + 3x3 = 6
4x1 + 7x2 + x3 = 2
2x1 + 3x2 + 10x3 = 9
- 첨자 입력이 안되므로 x1, x2, x3를 각각 A, B, C로 놓고 계산합니다.
- 식을 각각 A, B, C 에 대하여 정리합니다. (손으로 혹은 머리로)
- 정리된 식 3개를 계산기에 한꺼번에 입력합니다.
이 때 각각의 식 사이에 : 기호를 넣습니다.
식을 한꺼번에 입력해야 반복명령을 내릴 때 매우 편합니다.
알파벳 A, B, C 는 【ALPHA】 버튼을 누르고 해당 문자를 찾아서 클릭하여 입력합니다.
등호기호 = 도 계산 명령버튼인 【=】 키가 아니라 【ALPHA】 키를 이용해서 넣습니다.
버튼을 누르면 B와 C를 입력하도록 지시받는데,
【0】【=】 을 눌러 B, C 에 각각 (초기값을) 입력합니다.
B? 값과 C? 값을 입력받는 위 화면은 570 EX와 ES (PLUS) 의 기종에 따라 다릅니다.
버튼을 연속으로 누르면 A, B, C 값이 차례로 계산됩니다.
- A,B,C 계산이 완료된 후에
버튼을 다시 반복하여 누르면 B를 입력하는 화면으로 넘어가는데, 이 때는 앞서 계산된 결과 B=-2/5 가 입력됩니다. (2회차 계산이 시작된 것입니다.)
최종 결과가 나올 때까지 이를 반복합니다.
※ 주의사항
모든 연립방정식이 이 방법으로 풀리는 것은 아니며, 발산하는 경우도 있습니다.
발산하는지 수렴하는지 판단하는 방법이 있는데, 행렬의 모든 행에서 '대각성분의 절대값'이 '같은 행의 나머지 요소의 절대값 합'보다 크면 수렴한다고 합니다.
위 연립방정식을 예로 들면
1행 : |5| > |-1| + |3|
2행 : |7| > |4| + |1|
3행 : |10| > |2| + |3|
로서, 모든 행에서 조건을 만족하므로 반복해가 수렴합니다.
만약, 일부 행에서 조건을 성립하지 않으면 행의 순서를 바꾸어 주는 것이 도움이 될 수 있습니다.
http://apmath.kku.ac.kr/~kimchang/lect/na/chap4/index.html
답이 빠르게 구해지지 않는 경우가 많고, 입력한 수식은 수정이 불가능할 수도 있어서, 처음부터 (플러스, 마이너스, 숫자 등) 하나의 실수도 없게 입력을 잘 하였는지 아주 꼼꼼히 확인하시는게 좋습니다.
그리고 다른 방법으로 해를 구할 방법이 있다면, 그 방법을 이용하시는게 좋습니다.
세상의모든계산기 님의 최근 댓글
불러오기 할 때 변수값을 먼저 확인하고 싶을 때는 VARIABLE 버튼 【⇄[x]】목록에서 확인하고 Recall 하시면 되고, 변수값을 이미 알고 있을 때는 바로 【⬆️SHIFT】【4】로 (A)를 바로 입력할 수 있습니다. 2025 10.24 fx-570 CW 로 계산하면? - 최종 확인된 결과 값 = 73.049507058478629343538 (23-digits) - 오차 = 6.632809104889414877 × 10^-19 꽤 정밀하게 나온건 맞는데, 시뮬레이션상의 22-digits 와 오차 수준이 비슷함. 왜 그런지는 모르겠음. - 계산기중 정밀도가 높은 편인 HP Prime CAS모드와 비교해도 월등한 정밀도 값을 가짐. 2025 10.24 HP Prime 에서 <Home> 73.0495070344 (12-decimal-digits) // python 시뮬레이션과 일치 <CAS> 21자리까지 나와서 이상하다 싶었는데, Ans- 에서 자릿수를 더 늘려서 빼보니, 뒷부분 숫자가 아예 바뀌어버림. 버그인가? (전) 73.0495070584718691243 (21-digits ????) (후) 73.0495070584718500814401 (24-digits ????) 찾아보니 버그는 아니고, CAS에서는 십진수가 아니라 2진수(bit) 단위로 처리한다고 함. Giac uses 48 bits mantissa from the 53 bits from IEEE double. The reason is that Giac stores CAS data (gen type) in 64 bits and 5 bits are used for the data type (24 types are available). We therefore loose 5 bits (the 5 low bits are reset to 0 when a double is retrieved from a gen). 출처 : https://www.hpmuseum.org/cgi-bin/archv021.cgi?read=255657 일단 오차를 놓고 보면 16-decimal-digits 수준으로 보임. 2025 10.23 khiCAS 에서 HP 39gII 에 올린 khiCAS는 254! 까지 계산 가능, 255! 부터는 ∞ fx-9750GIII 에 올린 khiCAS는 factorial(533) => 425760136423128437▷ // 정답, 10진수 1224자리 factorial(534) => Object too large 2025 10.23 같은 방식으로 500! 근사값을 구해보면 1.219933487 × 10^(1134) 1.22013682599111006870123878542304692625357434280319284219241358838 × 10^(1134) (참값, 울프람 알파) 2025 10.23