2017-02-06 6 views
1

나는 Zimpl에서이 작업을 수행하려면,하지만 난 zimpl test.zpl 실행 한 후 나는 다음과 같은 오류가 발생합니다 :Zimpl의 조건부 설정?

set A := { 1..6 }; set B := { 1..4 }; set dim[A] := <1> {1}, <2> {1}, <3> {3}, <4> {2}, <5> {1}, <6> {4}; set C := {<i, j> in A*B with j<dim[i]};

오류 800 : test.zpl 4 호선 파일 : 구문 오류, 예기치 SETSYM을

세트 C : = {A가 B 인 j에서 < dim [i]};

기본적으로 내가 원하는 A*B: {<1,1>,<2,1>,<3,1>,<3,2>,<3,3>,<4,1>,<4,2>,<5,1>,<6,1>,<6,2>,<6,3>,<6,4>}

에서 이러한 요소 이런 일이 어떻게 극복하는 왜 어떤 생각?

답변

1

dim을 집합 대신 매개 변수로 정의해야합니다. 예는 다음과 같아야합니다.

set A := { 1..6 }; 
set B := { 1..4 }; 
param dim[A] := <1> 1, <2> 1, <3> 3, <4> 2, <5> 1, <6> 4; 
set C := {<i, j> in A*B with j < dim[i]}; 
do print C;