Common Lisp 언어로 숫자 맞추기 게임을 작성해 보았다.
아래 소스의 18째 줄 (setf guess (parse-integer sbuf)) 는 스트링을 정수로 변환하는 과정이다.
소스 파일명: guessNumber01.lsp
- #!/usr/bin/env clisp
- ;; Filename: guessNumber01.lsp
- ;; Purpose: Interatice game guessing a given number.
- ;; (if condition
- ;; (........) ; when condition is true
- ;; (........) ; when condition is flase
- ;; )
- ;; Execute: clisp guessNumber01.lsp
- ;; ......
- ;; Date: 2013. 9. 7.
- (defun doGuessing(num)
- (let* ((sbuf "")
- (guess 0))
- (format t "Enter your guess:~%")
- (setf sbuf (read-line))
- (setf guess (parse-integer sbuf))
- (if (= guess num)
- (progn
- (format t "You win!~%")
- (quit)
- )
- )
- ;; we won't get here if (= guessnum)
- (if (< guess num)
- (progn
- (format t "Too low!~%")
- (doGuessing num)
- )
- (progn
- (format t "Too high!~%")
- (doGuessing num)
- )
- )
- )
- )
- (doGuessing 123)
실행> clisp guessNumber01.lsp
Enter your guess:
111
Too low!
Enter your guess:
222
Too high!
Enter your guess:
123
You win!
'프로그래밍 > Common Lisp' 카테고리의 다른 글
Common Lisp 를 이용한 간단한 수학식 계산하기 (0) | 2013.09.07 |
---|---|
조립제법(Horner의 방법) 예제 2 for Common Lisp (0) | 2013.09.07 |
스트링 리스트에서 스트링 찾기(find) with Common Lisp (0) | 2013.09.06 |
스트링 배열 정렬(sorting)하기 with Common Lisp (0) | 2013.09.06 |
Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Common Lisp (0) | 2013.09.06 |