Prolog에서 DCG를 사용하여 길이가 n-1 인 모든 2 진 문자열의 언어를 생성하는 방법

임의의 계정
z(1) --> [].
z(N) --> [0] , z(Nm), {N is Nm+1}.
z(N) --> [1] , z(Nm), {N is Nm+1}. 

이것이 제가 지금까지 가지고있는 것입니다. 나는 생성하고 싶다

[0,0]
[0,1]
[1,0]
[1,1]

그러나 대신 [0, 0] 후에 무한 루프로 실행됩니다.

쿼리 할 때

?- z(3, X, []).
슬라고

항상 N을 정수로 사용하여 술어를 호출하는 경우 다음을 시도 할 수 있습니다.

z(1) --> [].
z(N) --> [0] , {N>1, Nm is N-1}, z(Nm).
z(N) --> [1] , {N>1, Nm is N-1}, z(Nm).

결과:

?- z(3, X, []).
X = [0, 0] ;
X = [0, 1] ;
X = [1, 0] ;
X = [1, 1] ;
false.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

R에서 재귀를 사용하여 길이가 n 인 모든 2 ^ n 이진 시퀀스의 행렬을 만드는 방법은 무엇입니까?

분류에서Dev

루프를 사용하여 문자열의 모든 문자가 대문자인지 확인하는 방법

분류에서Dev

Java에서 모두 1로 구성된 가변 길이의 이진수를 생성하는 가장 쉬운 방법은 무엇입니까?

분류에서Dev

조건이있는 알파벳에서 길이 N의 모든 단어를 생성하는 방법

분류에서Dev

Prolog를 사용하여 이진 트리에서 값의 모든 발생을 다른 값으로 바꾸는 방법

분류에서Dev

Python Regex를 사용하여 주어진 문자열에서 모든 정확한 일치를 찾는 방법

분류에서Dev

주어진 양의 정수에 1,2,3, .. N, (N-1), (N-2)를 인쇄하는 방법

분류에서Dev

PHP에서 배열의 길이 / 크기를 선언하여 사용자가 모든 크기를 입력 할 수있는 방법

분류에서Dev

R의 주어진 위치에서 변수 문자가 주어진 모든 가능한 문자열을 생성하는 방법은 무엇입니까?

분류에서Dev

재귀를 사용하여 크기 n의 모든 이진수 인쇄

분류에서Dev

하이브를 사용하여 주어진 범위에서 임의의 날짜를 생성하는 방법

분류에서Dev

주어진 문자열에서 하나 이상의 문자를 벗어나는 모든 문자열과 일치

분류에서Dev

파이썬에서 목록에있는 모든 문자열의 n 번째 문자를 변경하는 방법

분류에서Dev

Panda를 사용하여 JSON 문자열의 모든 요소를 테이블에 출력하는 방법

분류에서Dev

itertools를 사용하여 유니 코드 문자열 (Python)의 모든 문자 순열을 생성하는 방법

분류에서Dev

Bash를 사용하여 파일의 모든 줄에 문자열을 추가하는 방법

분류에서Dev

Rust에서 문자열의 모든 문자를 두 배로 늘리는 가장 관용적 인 방법

분류에서Dev

for 루프를 사용하여 다른 열과 일치하는 간격에 의해 조건이 조정 된 1 : n 값을 가진 열을 생성하는 함수

분류에서Dev

주어진 웹 사이트에서 사용 가능한 모든 문자열을 수집하는 방법

분류에서Dev

문자열의 모든 색인을 찾은 다음 색인을 사용하여 Hangman Game의 다른 문자열에서 해당 위치의 문자를 편집하는 가장 좋은 방법

분류에서Dev

Regex를 사용하여 Panda에서 문자열 내의 모든 대문자를 반환하는 방법

분류에서Dev

jQuery를 사용하여 문자열에 주어진 문자열이 포함되어 있는지 확인하는 방법

분류에서Dev

"a", "b", "c"를 포함하지만 "b"가 2 개, "c"가 3 개 이하인 모든 문자열에 대해 간결한 정규식을 작성하는 방법

분류에서Dev

문자열의 모든 문자 뒤에 "^"를 추가하는 방법

분류에서Dev

가능한 모든 문자에서 그려진 문자열을 생성하는 방법은 무엇입니까?

분류에서Dev

모든 특수 문자를 찾고 주어진 문자열로 인쇄하는 방법은 무엇입니까?

분류에서Dev

채워진 모든 행 사이에 n 개의 빈 행을 삽입하는 매크로를 작성하는 방법은 무엇입니까? (여기서 n은 2 이상)

분류에서Dev

C #에서 String.Split () 메서드 또는 Linq Lambda 표현식을 사용하여 주어진 문자열에서 분할 문자의 길이를 찾는 가장 좋은 방법은 무엇입니까?

분류에서Dev

평가 및 문자열 연결없이 임의 개수의 인수를 사용하여 Bash에서 무언가를 호출하는 방법

Related 관련 기사

  1. 1

    R에서 재귀를 사용하여 길이가 n 인 모든 2 ^ n 이진 시퀀스의 행렬을 만드는 방법은 무엇입니까?

  2. 2

    루프를 사용하여 문자열의 모든 문자가 대문자인지 확인하는 방법

  3. 3

    Java에서 모두 1로 구성된 가변 길이의 이진수를 생성하는 가장 쉬운 방법은 무엇입니까?

  4. 4

    조건이있는 알파벳에서 길이 N의 모든 단어를 생성하는 방법

  5. 5

    Prolog를 사용하여 이진 트리에서 값의 모든 발생을 다른 값으로 바꾸는 방법

  6. 6

    Python Regex를 사용하여 주어진 문자열에서 모든 정확한 일치를 찾는 방법

  7. 7

    주어진 양의 정수에 1,2,3, .. N, (N-1), (N-2)를 인쇄하는 방법

  8. 8

    PHP에서 배열의 길이 / 크기를 선언하여 사용자가 모든 크기를 입력 할 수있는 방법

  9. 9

    R의 주어진 위치에서 변수 문자가 주어진 모든 가능한 문자열을 생성하는 방법은 무엇입니까?

  10. 10

    재귀를 사용하여 크기 n의 모든 이진수 인쇄

  11. 11

    하이브를 사용하여 주어진 범위에서 임의의 날짜를 생성하는 방법

  12. 12

    주어진 문자열에서 하나 이상의 문자를 벗어나는 모든 문자열과 일치

  13. 13

    파이썬에서 목록에있는 모든 문자열의 n 번째 문자를 변경하는 방법

  14. 14

    Panda를 사용하여 JSON 문자열의 모든 요소를 테이블에 출력하는 방법

  15. 15

    itertools를 사용하여 유니 코드 문자열 (Python)의 모든 문자 순열을 생성하는 방법

  16. 16

    Bash를 사용하여 파일의 모든 줄에 문자열을 추가하는 방법

  17. 17

    Rust에서 문자열의 모든 문자를 두 배로 늘리는 가장 관용적 인 방법

  18. 18

    for 루프를 사용하여 다른 열과 일치하는 간격에 의해 조건이 조정 된 1 : n 값을 가진 열을 생성하는 함수

  19. 19

    주어진 웹 사이트에서 사용 가능한 모든 문자열을 수집하는 방법

  20. 20

    문자열의 모든 색인을 찾은 다음 색인을 사용하여 Hangman Game의 다른 문자열에서 해당 위치의 문자를 편집하는 가장 좋은 방법

  21. 21

    Regex를 사용하여 Panda에서 문자열 내의 모든 대문자를 반환하는 방법

  22. 22

    jQuery를 사용하여 문자열에 주어진 문자열이 포함되어 있는지 확인하는 방법

  23. 23

    "a", "b", "c"를 포함하지만 "b"가 2 개, "c"가 3 개 이하인 모든 문자열에 대해 간결한 정규식을 작성하는 방법

  24. 24

    문자열의 모든 문자 뒤에 "^"를 추가하는 방법

  25. 25

    가능한 모든 문자에서 그려진 문자열을 생성하는 방법은 무엇입니까?

  26. 26

    모든 특수 문자를 찾고 주어진 문자열로 인쇄하는 방법은 무엇입니까?

  27. 27

    채워진 모든 행 사이에 n 개의 빈 행을 삽입하는 매크로를 작성하는 방법은 무엇입니까? (여기서 n은 2 이상)

  28. 28

    C #에서 String.Split () 메서드 또는 Linq Lambda 표현식을 사용하여 주어진 문자열에서 분할 문자의 길이를 찾는 가장 좋은 방법은 무엇입니까?

  29. 29

    평가 및 문자열 연결없이 임의 개수의 인수를 사용하여 Bash에서 무언가를 호출하는 방법

뜨겁다태그

보관