노트: Prolog 만만

3584 단어 Prolog

참고


  • 편의성 Prolog 프로그래밍 입문

  • 설치


    sudo apt install -y swi-prolog
    

    시작


    swipl --quiet
    

    명령




    명령
    의미


    명령, 명령.
    명령을,에서 계속한다. 다른 언어의 ;

    read(Term)
    표준 입력을 Term에 저장

    write ( 'hello').
    echo 'hello'

    char_code (원시, X).
    원시 문자 코드 출력
    halt.종료

    .
    명령의 끝을 나타내는 모습

    ctrl-D
    빠지다

    :-
    함수 정의

    ;
    다음 결과 표시


    파일 로드


  • Prolog 프로그램이란?

  • fly.swi
    fly(X) :- airplane(X).
    airplane(jet_plane).
    airplane(helicopter).
    
    $ swipl -f fly.swi
    ?- fly(jet_plane).
    true.
    
    ?- fly(taro).
    false.
    

    ;를 입력하면 다음 결과가 표시됩니다.
    ?- fly(Y).
    Y = jet_plane ;
    Y = helicopter.
    

    함수 정의



    정의되지 않은 경우
    $ swipl
    ?- square(2, Y).
    ERROR: toplevel: Undefined procedure: square/2 (DWIM could not correct goal)
    

    a.swi
    square(X, Y) :- Y is X * X.
    

    호출할 수 있다
    $ swipl -f a.swi
    ?- square(2, Y).
    Y = 4.
    

    (참고까지) ruby로 쓰는 경우
    def square(x)
        return x * x
    end
    
    y = square(2)
    p y
    

    숫자 비교 참고



    상당히 익숙하지 않은 쓰기 방법이군요. .

    리스트


  • 목록의 패턴 매칭
  • ?- [spring, summer, autumn, winter] = [A, B, C, D].
    A = spring,
    B = summer,
    C = autumn,
    D = winter.
    

    좋은 웹페이지 즐겨찾기