| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
이영석
가입: 2011년 9월 5일 올린 글: 103
|
올려짐: 2011년11월9일 11:37 주제: 숙제 6 관련 공지사항 |
|
|
mathenatica 관련 내용입니다.
1. SIGMA 나 INTEGRAL 의 세번째 exp 가 아닌 곳에서 X가 사용되었을 경우에는 FreeVariable 예외를 던집니다.
2. SIGMA 에 첫번째 두번째 exp 에 INT 가 아닌 다른 것이 들어왔을 떄에는 InvalidSigma 예외를 던집니다. 또한 첫번째 INT 가 두번째 INT 보다 클 떄에는 0을 리턴합니다.
3. Integral은 Top-Left corner approximation 방식으로 합니다.
시작값보다 끝값이 큰 경우에는 -를 넣고 반대로 계산합니다.
알갱이 크기보다 작은 구간이 남게되면 작은 구간에 대해서만 계산합니다.
(1.1~1.24라면 f(1.1)*0.1+f(1.2)*0.04 로 하시면 됩니다)
예외처리는
| 코드: |
exception InvalidSigma
...
raise InvalidSigma
...
|
와 같은 방법으로 하시면 됩니다.
또한 Ocaml 에는 real 타입이 존재하지 않으므로 float 으로 바꾸어서 작성해주세요.
REAL of float 로 바꾸시면 됩니다.
mathenatica 의 타입은 exp -> float 가 됩니다.
이영석 가 2011년11월9일 13:34에 수정함, 총 1 번 수정됨 |
|
| 위로 |
|
 |
hanbit2222
가입: 2011년 9월 19일 올린 글: 12
|
올려짐: 2011년11월9일 13:31 주제: 예외가 겹치는 경우는... |
|
|
| SIGMA에서 x가 첫번째, 두번째 exp에 나온다는 것은 INT가 아닌 다른 것이 들어온 것인데 그때는 예외를 어떻게 처리하면되나요? |
|
| 위로 |
|
 |
이영석
가입: 2011년 9월 5일 올린 글: 103
|
올려짐: 2011년11월9일 13:56 주제: |
|
|
| InvalidSigma 입니다. |
|
| 위로 |
|
 |
조항준
가입: 2011년 9월 19일 올린 글: 4
|
올려짐: 2011년11월11일 19:32 주제: SIGMA와 다른 사칙연산에서의 예외 처리 |
|
|
위의 조교님 답변에 따르면
SIGMA는 항상 InvalidSigma만 발생시킨다고 볼 수 있겠죠?
어차피 X가 들어가면 결과값이 REAL만 나오기 때문에
그렇게 되면 SIGMA에서는 FreeVariable 에러가 발생될 수 없는게 맞죠?
그리고 ADD, SUB와 같은 다른 사칙연산이 바로 입력으로 들어올 때
즉, SIGMA나 INTEGRAL이 아닌 경우 X가 들어오면
FreeVariable 예외를 발생시키면 될까요? |
|
| 위로 |
|
 |
현.철
가입: 2011년 9월 27일 올린 글: 35
|
올려짐: 2011년11월13일 15:08 주제: |
|
|
| 0으로 나누는 경우는 어떻게 할까요? |
|
| 위로 |
|
 |
이승중
가입: 2010년 6월 22일 올린 글: 561
|
올려짐: 2011년11월14일 11:12 주제: |
|
|
| 0으로 나누는 부분은 따로 처리하지 않으셔도 됩니다. |
|
| 위로 |
|
 |
|