clpfd

    2

    2답변

    나는이 작업을 수행하는 프로그램 작성입니다 : ?- pLeap(2,5,X,Y). X = 2, Y = 3 ; X = 3, Y = 4 ; X = 4, Y = 5 ; X = 5, Y = 5 ; false. 것은 (모든 쌍을 제공 X, X + 1 2 5 플러스 끝에 특별한 케이스 사이). 이것은 아마도 해결책 일 것입니다. 나는 그것이 어떻게

    2

    1답변

    퍼즐 해결에 문제가 있습니다. 나는이 퍼즐에 대한 해결책을 어디서든지 발견하지 못했지만 Prolog에 써 보려고했지만 내 솔루션이 빠르지 않을 것이라고 생각합니다 (모든 솔루션을 생성하고 가능하지 않거나 정확하지 않은 경우 삭제합니다). 이것은 내 문제입니다 : (그 퍼즐의 이름을 발견했습니다. 여기 퍼즐의 모든 규칙을 가진 링크가 있습니다 : http:/

    4

    1답변

    행렬을 곱하는 코드를 발견했습니다. % SWI-Prolog has transpose/2 in its clpfd library :- use_module(library(clpfd)). % N is the dot product of lists V1 and V2. dot(V1, V2, N) :- maplist(product,V1,V2,P), sumlist(

    1

    1답변

    프롤로그 (구현 - 일식 프롤로그)에서 산술 표현을 해결하려고합니다. 해결하고자하는 산술 표현식은 다음과 같습니다 A * (C + B * X) + D * X = E X 계산되는 값과 다른 모든 (A, B, C, D, E) 모든 숫자가된다. 예를 들어 : 5 * (3 + 2 * X) + 2 * X = 39, 프롤로그에 입력 될 값 2 쿼리 (목표)에 X를

    2

    2답변

    fd_domain([A, B, C], 0, 9), (A**(B+C)) #= ((A**B)*(A**C)). 몇 가지 해결책이 있습니까? 좋아 보인다; P 내가 그 특정 오류를 얻고있다 가 : uncaught exception: error(instantiation_error,(#=)/2)

    4

    2답변

    "선언적 언어"클래스의 경우 Tangram 퍼즐을 해결하는 프롤로그 프로그램을 작성해야합니다. 퍼즐은 퍼즐 포인트의 좌표 목록으로 식별됩니다. 예를 들어 puzzle(7,[(0,0),(8,0),(4,4)])은 식별자가 7 인 퍼즐이며 삼각형을 나타냅니다. 여기가 내 (순진한) 방법입니다. 실행은 tangram(Puzzle, Puts)으로 시작합니다. 이 프

    6

    1답변

    프롤로그에서 float를 정수로 변환하는 방법은 무엇입니까? 내가 시도 : 당신이 사용 integer/1이 참 ?- integer(truncate(sqrt(9))). false. ?- integer(round(sqrt(9))). false.

    2

    2답변

    X 만 알면 프롤로그에서 Y와 Z를 얻는 방법은? 예를 들어 : test(X, Y, Z) :- X is Y + Z. 하지만 오류 : ?- test(2, Y, Z). ERROR: is/2: Arguments are not sufficiently instantiated

    0

    3답변

    글로벌 스택의 출력 : :- use_module(library(clpfd)). p(N, Indexes) :- M in 1..N, M #=< N, length(Indexes, M), Indexes ins 1..N. 그것은 나 모든 결과를 반환을했지만 결국 충돌에 with ERROR: Out of global stac

    2

    2답변

    안녕하세요, 저는 간단한 문제가있어서 저는 프롤로그와 함께 매우 새롭다고 경고합니다. 동일한 크기의 세 개의 목록이 있다고 가정합니다. 각 목록에는 1, 0 또는 -1 만 들어 있습니다. 나는 모든 i에 대해 세 목록 중 i 번째 요소 중 하나만이 0이 아닌지 확인하고자합니다. 이 코드는 그것을 수행하는 고정 I : :- use_module(library(