이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
유경인
가입: 2013년 9월 9일 올린 글: 29
|
올려짐: 2013년12월17일 23:14 주제: 프로젝트 3 질문입니다 |
|
|
그때 마지막 실습시간에 질문했었는데.. 뭐라고 답변주셨는지 기억이 잘 안나서 질문합니다
플젝 3번 check_cmd에서
같은 tag가 여러개있으면 false리턴하라고 하셨는데요
실행되지않는 goto문에 딸린 tag가 여러개있는 경우도 false리턴하나요?
예를들어
x has 0;
y has read;
L : z has x+y;
goto L on x;
L : say z;
는 false인가요 true인가요
추가로,
실행되지않는 goto문에 딸린 tag가 없으면 어떻게되나요? 이경우에도 false리턴하나요
유경인 가 2013년12월17일 23:29에 수정함, 총 2 번 수정됨 |
|
위로 |
|
|
유경인
가입: 2013년 9월 9일 올린 글: 29
|
올려짐: 2013년12월17일 23:23 주제: |
|
|
한가지 더,
cmd는 마지막의 say를 출력값이라 생각한다 하셨는데요
cmd의 마지막 문장이 say가 아니라 다른것이어도 상관없나요?
즉,
x has 1;
y has 2;
say y;
say x;
y has x+y;
1. 이건 valid한 프로그램인가요?
2. valid하다면, 이 프로그램의 출력값은 1인건가요?
3. 또한, transform함수는 내부에서 check_exp를 돌려서 true인 경우에만 변환해야하나요?
그렇다면, check_exp가 false인 경우에 transform은 뭘 리턴해야 하나요? |
|
위로 |
|
|
조성근
가입: 2009년 9월 14일 올린 글: 283
|
올려짐: 2013년12월18일 8:33 주제: |
|
|
https://ropas.snu.ac.kr/phpbb/viewtopic.php?t=4180 에서도 이야기했지만 "실행이 되는지 아닌지"를 분석하는 것은 문제의 난이도를 급상승시킵니다. 실행되지 않는 goto문에 딸린 tag라고 해서 true를 리턴하는 것이 더 좋은 답변이지만, 이러한 경우에 false를 리턴하여도 옳다고 채점할 예정입니다.
추가로, 실행되지 않는 goto문에 딸린 tag가 있는지 없는지도 마찬가지이구요.
1. say가 여러개 있는 경우, 문제에 대해서 say에 대한 특별한 제한이 없으므로 valid하다고 하겠습니다.
2. 출력값은 2이겠지요. say y가 먼저 불리니까요. 2를 출력하고 프로그램이 끝난다고 생각할 수 있겠습니다.
3. transform함수가 내부에서 check_exp를 돌릴 필요는 없습니다. |
|
위로 |
|
|
유경인
가입: 2013년 9월 9일 올린 글: 29
|
올려짐: 2013년12월18일 17:55 주제: |
|
|
그렇다면,
한번의 say 이후에
옳지않은 문장이 와도 true인가요? 이미 첫번째 say에서 프로그램이 종결된 것이니까요
예를들어
x has 1;
say x;
say y;
는 옳은 프로그램인가요 |
|
위로 |
|
|
조성근
가입: 2009년 9월 14일 올린 글: 283
|
올려짐: 2013년12월19일 10:26 주제: |
|
|
다시 말씀드리지만 "실행이 되는지 아닌지"를 분석하는 것은 문제의 난이도를 급상승시킵니다. 실행되지 않는 say문에 딸린 x라고 해서 true를 리턴하는 것이 더 좋은 답변이지만, 이러한 경우에 false를 리턴하여도 옳다고 채점할 예정입니다. |
|
위로 |
|
|
|