Scala 언어는 명령형 언어와 함수형 언어의 특징을 모두 갖고 있으며,
그 구문 바탕은 Java의 것을 빌려 쓴다. 또한 Java 언어 처럼 타입에 엄격한
(strictly typed) 언어이다.
변수 선언이나 함수의 매개변수 표기하는 방식을 Visual Basic의 것과 비슷하다.
Visual Basic에서 Dim이라는 키워드가 Scala 언어에서는 var이다.
Scala 언어로 숫자 맞추기 게임을 작성해 보았다.
소스에서 눈여겨볼 부분은 18째~20째 줄이다.
var r : BufferedReader = new BufferedReader(new InputStreamReader(System.in))
var sbuf = r.readLine()
var guess = Integer.parseInt(sbuf)
그 구문 바탕은 Java의 것을 빌려 쓴다. 또한 Java 언어 처럼 타입에 엄격한
(strictly typed) 언어이다.
변수 선언이나 함수의 매개변수 표기하는 방식을 Visual Basic의 것과 비슷하다.
Visual Basic에서 Dim이라는 키워드가 Scala 언어에서는 var이다.
Scala 언어로 숫자 맞추기 게임을 작성해 보았다.
소스에서 눈여겨볼 부분은 18째~20째 줄이다.
var r : BufferedReader = new BufferedReader(new InputStreamReader(System.in))
var sbuf = r.readLine()
var guess = Integer.parseInt(sbuf)
번수 선언이 Visual Basic의 것과 유사한 것 말고는 Java의 구문과 거의 같다.
소스 파일명: guessNumber01.scala
- /*
- * Filename: guessNumber01.scala
- * Purpose: Interatice game guessing a given number.
- * if {CONDITION) {
- * ......
- * }
- * else {
- * ......
- * }
- * Execute: scala -encoding MS949 guessNumber01.scala
- */
- import java.io._
- import java.util._
- def doGuessing(num: Int) {
- println("Enter your guess:")
- var r : BufferedReader = new BufferedReader(new InputStreamReader(System.in))
- var sbuf = r.readLine()
- var guess = Integer.parseInt(sbuf)
- if (guess == num) {
- println("You win!")
- return
- }
- // we won't get here if guess == num
- if (guess < num) {
- println("Too low!")
- doGuessing(num)
- }
- else {
- println("Too high!")
- doGuessing(num)
- }
- }
- doGuessing(123)
실행> scala -encoding MS949 guessNumber01.scala
Enter your guess:
111
Too low!
Enter your guess:
222
Too high!
Enter your guess:
123
You win!
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
'프로그래밍 > Scala' 카테고리의 다른 글
Scala 언어로 평방근, 입방근, n제곱근 구하는 함수를 구현하고 테스트하기 (0) | 2013.01.12 |
---|---|
Scala 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제 (0) | 2013.01.01 |
스트링 배열에서 스트링 찾기(find) with Scala (0) | 2009.04.22 |
스트링 배열 정렬(sorting)하기 with Scala (0) | 2009.04.18 |
대화형 모드의 진법(radix) 변환 예제 with Scala (0) | 2009.03.09 |