clpfd

    8

    3답변

    이 문제를 수행하고 있지만 완전히 프롤로그에 익숙하지 않으며 어떻게 수행해야할지 모릅니다. 전자 보드의 9 개 부분은 정사각형 모양을 가지며 각 부분의 동일한 크기와 각 가장자리에는 문자와 플러스 또는 마이너스 기호가 표시되어 있습니다. 부품은 아래 그림과 같이 완전한 보드로 조립되어야 공통 가장자리가 같은 문자와 반대 기호를 갖게됩니다. 프로그램이 쿼리로

    2

    1답변

    Prolog에 정수의 digit sum을 계산하는 규칙을 어떻게 정의 할 수 있습니까? 예 : digitsum[Integer, Result] :- ... 되도록 X = 6 (= 1 + 2 + 3)에 질의 결과 digitsum(123, X).. SWI-Prolog에서 실행되는 솔루션은 높이 평가됩니다.

    3

    1답변

    저는 프롤로그를 처음 사용 했으므로 이와 같은 것을하고 싶지만 어디서부터 시작해야할지 모릅니다. 이미 행렬을 만들었고 숫자를 확인하는 방법은 Bounds 라이브러리에서 9 이하입니다.하지만 그 점에 대해서는 며칠 동안 고민하고 있습니다. 은 다음과 같아야합니다 2+7-4=5 + - * 9-5*2=8 - + - 4*3-8=4 = = = 7 5 0

    -1

    1답변

    내가 SWI - 프롤로그에서 9 × 9 스도쿠 퍼즐을 해결하기 위해 노력하고있어와 "거짓"하지만 오류에게 그것을 제공하지 않습니다 단순히 "거짓"이라고 진술합니다. 코드도 올바르게 컴파일됩니다. :- use_module(library(clpfd)). valid([]). valid([Head|Tail]) :- all_different(Head)

    1

    1답변

    나는 단지 내가 누적 술어의 옵션입니다 세계 자원 제한의 최소화에 의해 주문 활동의 일정을 검색 할이 schedule(Activities, GLB) :- get_start_times(Activities,StartTimes), get_resources(Activities,Resources), get_durations(Activit

    1

    1답변

    나는 다음 SWI 프롤로그 쿼리를했고 [A,B,C] ins 1..3, A#= B + C. 에 응답하고 잘못 된 아래에서 선택하기 위해 필요한 경우 A in 2..3, B in 1..3, C in 1..3. 내가 2에서하는 생각에 올바른 것입니다. 어떤 경우에도 A = 3 일 수 없으므로 .3 불가능합니다.

    5

    1답변

    Prolog CLPFD에서 효율적인 배타적 논리합 (XOR)을 구현하려고합니다. xor(A, B, AxorB). A, B, AxorB가 (0) 자연수와 AxorB가 AXORB의 결과이다 : 이것은 단순한 술어 같이해야한다. 내 주요 문제는 효율성입니다. 첫째, 나는 더 많은 처리/제약이 될 수있는 별도의 부분으로 그 수를 깨지 않고 2 개의 수를 XOR

    14

    3답변

    목록에있는 요소의 수를 숫자로 계산하는 작은 프로그램을 작성하고 있습니다. 나는 다음과 같은 코드를 실행하면 not_number([],0). not_number([X|T],R):- not(number(X)), R1 is R+1, not_number(T,R1). not_number([_|Tail],Result):- n

    3

    1답변

    내가 다음 CLP (FD) 쿼리가 : SWI - 프롤로그에서 ?- use_module(library(clpfd)). ?- [I,N,M,J] ins -2147483648..2147483647, I - 3*N #= X, X in 1..2, I - 5*M #= Y, Y in 1..4, I - 15*J #= 0. 라벨/1 목표없이 쿼리를 포즈 이미 인터

    3

    1답변

    저는 프롤로그를 처음 사용하고 있으며 우분투에서 swi-prolog를 사용하여 배우고 있습니다. 나는 근로자/제품 할당 문제를 해결하기 위해 clpfd 모듈을 사용하고 있습니다. 문제는 페이지 7의 this 종이에 나와 있습니다. 여기까지 제가 그 논문에서 가지고있는 것입니다. solver(Sol) :- Sol = [A,B,C,D], [A