| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
김유준
가입: 2012년 10월 19일 올린 글: 16
|
올려짐: 2012년12월12일 13:33 주제: 프로젝트에 대해서 간단한 입력, 결과값 예시 주실수 있으신가요?? |
|
|
프로젝트를 하려고 하는데 입력, 결과값이 정확히 어떻게 되는지를
잘 가늠이 안되어서 어떤 식의 인풋이 들어온다 라는
예시 한두개씩만 들어주시면 안될까요
프로젝트 1번의 경우는 ((r1,0,0),...)이런식으로 인풋이 들어온다 이런정도..
프로젝트는 테스트셋을 찾을수가 없어서 입출력 정하기가까다롭네요  |
|
| 위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2012년12월12일 15:44 주제: |
|
|
| 코드: | | 프로젝트 1번의 경우는 ((r1,0,0),...)이런식으로 인풋이 들어온다 이런정도.. |
이부분은 정확히는 [ ("r1", (0,0)) ; ...] 이런식이겠지요
프로젝트 2번같은 경우에는
예를들어
2페이지가 존재하고
자기자신에 대한 링크밖에 없다고 가정해봅시다.
그럼 단위행렬이겠지요
[1 0]
[0 1]
| 코드: |
let m1001 = Markov.add_row [0.;1.] (Markov.row [1.;0.])
let m1111 = (Markov.column [5.;1.])
matrix_printer (Markov.markov_limit m1001 m1111)
|
위와같이 테스트해보면
[5.]
[1.]
이 나오면 됩니다.
matrix_printer같은 함수는 편한대로 만들어서 테스트해 보시면 되겠지요.
문서에 나온 예제를 코드로 옯겨보면
| 코드: |
let m2 = Markov.add_column [0.;1.;0.]
(Markov.add_column [1./.3.;1./.3.;1./.3.]
(Markov.column [1./.2.;1./.2.;0.]))
in
let minit = (Markov.column [1.;1.;1.]) in
matrix_printer (Markov.markov_limit m2 minit)
|
답은
[1. ]
[1.5]
[0.5]
markov_limit을 구현하실때 무한루프를 돌지 않도록 조심해주세요.
실수이므로 적절한 시점에 계산을 멈출수 있도록 답으로 인정하는 오차범위를 공지해드리겠습니다.
* Markov.size나 Markov.ij에서 i와 j가 column, row임을 주의해주세요
프로젝트3은 입력에대한 설명과 도구가 충분하다고 생각하는데 어떤 부분이 부족한가요?
계속 질문을 많이 해주세요 
강동옥 가 2012년12월19일 22:37에 수정함, 총 1 번 수정됨 |
|
| 위로 |
|
 |
김유준
가입: 2012년 10월 19일 올린 글: 16
|
올려짐: 2012년12월13일 14:10 주제: 감사합니다! |
|
|
| 또 질문 올릴게요~ |
|
| 위로 |
|
 |
김유준
가입: 2012년 10월 19일 올린 글: 16
|
올려짐: 2012년12월13일 23:10 주제: |
|
|
3번에서 read는 무엇을 의미하나요??
리눅스창에서 scanf같이 키보드로 입력하는것을 말하는것인가요?
그게 아니라면 n이랑 다를 게 없어보여서 질문드립니다 |
|
| 위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2012년12월13일 23:35 주제: |
|
|
네 맞습니다.
README에 적어두었지만,
제공해드린 파일에서 main.ml의 가장 아랫부분에 raise 부분을
main() 으로 고쳐주시면 쉘에서
-e 옵션으로 실행시켜보실 수 있습니다. |
|
| 위로 |
|
 |
최지헌
가입: 2012년 9월 6일 올린 글: 35
|
올려짐: 2012년12월14일 17:50 주제: |
|
|
| 강동옥 씀: |
* Markov.size나 Markov.ij에서 i와 j가 column, row임을 주의해주세요
|
i와 j는 0부터 시작하나요 1부터 시작하나요? |
|
| 위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2012년12월14일 20:58 주제: |
|
|
0부터 시작합니다.
예시
size:(2,2)
(0,0) (1,0)
(0,1) (1,1)
강동옥 가 2012년12월14일 23:40에 수정함, 총 1 번 수정됨 |
|
| 위로 |
|
 |
김유준
가입: 2012년 10월 19일 올린 글: 16
|
올려짐: 2012년12월14일 23:20 주제: |
|
|
프로젝트 3번에서 정수형에는 변수형의 say에 해당하는 함수가 없는데
그냥 정수형을 계산하고 나온 결과값이
say 의 변수에 해당하는 값이라고 해석하면 되나요?? |
|
| 위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2012년12월14일 23:37 주제: |
|
|
| 네 가장 마지막에 say 한 것을 리턴값으로 합니다. |
|
| 위로 |
|
 |
김유준
가입: 2012년 10월 19일 올린 글: 16
|
올려짐: 2012년12월15일 20:36 주제: |
|
|
실행시에 대해 질문 있습니다!
repeat (if read (2+5) (read)) read
1 2 3
를 기본 메인으로 ./run -e example/test.exp로 실행시켜 보면은
1번 read를 받고, 0이면 2번 read를 받고, 아니면 안받고
3번 read를 받고, 다시 1번 read를 받고 0이면 2번 read를 받고 아니면 안받고 하는데
처음에 1번과 2번 read는 단지 옳은 수행 파일인지 검사하는 것 같더라고요
그래서 입력을 순서대로 3 2 0 -1 이렇게 입력을 하면 -2의 값이 나오네요
원래 프로젝트에 의하면 마지막에 -1값은 위에 2번 인풋이라 repeat a b 에서 a부분이 -1이 되어서 안되야지 정상 아닌가요?
그리고 제가 해야되는 프로젝트 과제는
저게 수행이 되는지 안되는지는 이미 검사를 하고 난 뒤에 변환을 하는 것이니까 변환을하는거는 뭐든지 된다고 가정하고 변환해도 상관없는거지요??
그리고 위에 예시에서 검사가 아니라 수행과정에서는 3-> 1 -> 2 이런 순서로 input을 받았는데 제가 변환한 코드는 1->2->3 이렇게 인풋을 받도록 됬네요 어떻게 인풋을 받는지 받아야되는 순서가 따로 있나요? |
|
| 위로 |
|
 |
강동옥
가입: 2009년 9월 18일 올린 글: 602
|
올려짐: 2012년12월16일 9:27 주제: |
|
|
1. 죄송합니다.
인터프리터에서 한번더 evaluate하는 실수가 있었네요
고쳐서 올렸습니다.
제시하신 코드를 수행하면
1 2 3 순서로 read를 받고 끝나는 것이 맞습니다.
2. 네 transform에서는 변환만 해주세요.
3. 실행순서는 언제나 left associative입니다. |
|
| 위로 |
|
 |
|