게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

[HW4] Question on Test Case #7

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Spring 2023)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
abebe



가입: 2023년 3월 15일
올린 글: 4

올리기올려짐: 2023년4월21일 20:23    주제: [HW4] Question on Test Case #7 인용과 함께 답변

Dear TAs,

I have a question on the outcome of test case #7 below.

"
(* Public test case 7 : call by reference *)

let proc f (a,b,c) =
write a;
write b;
write c;
b := 5;
(a * b) + c
in
let x := 1 in
let y := 2 in
let z := 3 in
write(f <x,y,z> + y)

(* Output : prints out "1\n2\n3\n13\n" *)
"

Why is the output of "f <x,y,z> + y" 13? Shouldn't it be 10?


Thank you in advance for your response!
Dawit F. Amanu
위로
사용자 정보 보기 비밀 메시지 보내기
김도형



가입: 2022년 3월 8일
올린 글: 103

올리기올려짐: 2023년4월22일 14:34    주제: 인용과 함께 답변

Hello.

As procedure f is called by reference, f gets the location for its variable.

Assigning a value 5 in 'b' actually involves assigning a value to its location, which is bound to variable y.

Hence, after f<x,y,z>, y's value should be changed.

Thank you.
위로
사용자 정보 보기 비밀 메시지 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Spring 2023) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay