2014-12-12 14 views
1

구매자와 판매자가 두 가지입니다. 구매자는 buyer_Price를 소유하고 판매자는 seller_Price를 소유합니다. 판매자 가격이 < = 구매자 - 가격 거래가 이루어지는 경우. 그래서 그것을 코드 :netlogo 거북이 값과 함께 오류가 발생했습니다

ask turtles [ if seller_Price <= buyer_Price [deal]] 

하지만 난이 오류가 될 :

SELLERS breed does not own variable BUYER_PRICE 
error while seller 34 running BUYER_PRICE 
    called by procedure INTERACTION 
    called by procedure GO 
    called by Button 'STEP' 

는 심지어 내가 변경 동일 ask turtlesask buyyers 또는 ask sellers

사람이 내 실수에 대한 몇 가지 팁을 줄 수있는, 무엇을 나는 바꿔야 하나?

+2

코드는 각 거북이마다 한 번에 하나씩 실행됩니다. 거북이는 구매자 또는 판매자 일 뿐이므로 거북이에는 '판매자 _ 가격'또는 '구매자 _ 가격'만 있지만 둘 다 가질 수는 없습니다. 나는 각 구매자가 어떤 판매자와 상호 작용하기로되어 있다고 가정한다. 누구와 각각 상호 작용해야합니까? –

+0

마지막 질문을 이해하지 못했습니다. 설명해 주시겠습니까? + 예상 : - 하지만 난 너무이 오류 령 어를 얻을 수 이 판매자의 [설정 ownCosts의 ownCosts + (deal_Price seller_Price)]를 물어 – runle

답변

2

브라이언 (Brian)이 주장하는 것처럼 잠재적 인 구매자와 잠재적 인 판매자를 선택하기를 원할 것입니다 (판매자가 상품 등을 다 소비하지 않도록). 그러나 모든 구매자가 적절한 가격으로 모든 판매자로부터 구매하기를 원한다면, '자신'을 사용하는 코드가 묻기의 변수에 액세스하기를 원할 것입니다. 코드는 다음과 같습니다.

breed [buyers buyer] 
buyers-own 
[ buyer_Price ] 

breed [sellers seller] 
sellers-own 
[seller_Price] 

to setup 
    clear-all 
    create-sellers 5 [set seller_Price random-float 1] 
    create-buyers 5 [set buyer_Price random-float 1] 

    ask buyers 
    [ ask sellers 
    [ if seller_Price < [buyer_Price] of myself [print myself print self ] 
    ] 
    ] 
end 

방금 ​​거래 절차 대신 인쇄 명세서를 작성했습니다. 당신은 두 개의 후보 거북 사이를 거래하는 절차로 거래 절차를 돌리고 그 절차에 자신과 자신을 넘겨주고 싶을지도 모릅니다.

+0

덕분에 나는 그것이 – runle

+0

하나 더 질문을 알고 확인합니다, 나는 거래 과정에서이 코드를 숫자가되도록 입력했지만 목록 []이 대신 있습니다. 버튼 'GO'가 호출하는 프로 시저 GO 에 의해 호출 된 프로 시저 INTERACTION 에 의해 호출 된 프로 시저 DEAL 에 의해 호출 된 판매자 +40 판매자 40 동안 오류가 발생했습니다. 여기에서 문제가 무엇인지 말씀해 주시겠습니까? – runle

+0

"-"의 한면 또는 다른면에 공간이없는 것 같아서 netlogo는 뒷부분의 자료를 두 변수의 목록으로 읽습니다. 당신이하는 일이 덧셈과 뺄셈뿐이라면, 괄호는 필요 없다. 녹색 진드기를 사용하여 구문을 확인하고 있습니까? – JenB

관련 문제