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)

번수 선언이 Visual Basic의 것과 유사한 것 말고는 Java의 구문과 거의 같다.



소스 파일명: guessNumber01.scala
  1. /*
  2.  *  Filename: guessNumber01.scala
  3.  *  Purpose:  Interatice game guessing a given number.
  4.  *                if {CONDITION) {
  5.  *                    ......
  6.  *                }
  7.  *                else {
  8.  *                    ......
  9.  *                }
  10.  *  Execute: scala -encoding MS949 guessNumber01.scala
  11.  */
  12. import java.io._
  13. import java.util._
  14. def doGuessing(num: Int) {
  15.     println("Enter your guess:")
  16.     var r : BufferedReader = new BufferedReader(new InputStreamReader(System.in))
  17.     var sbuf = r.readLine()
  18.     var guess = Integer.parseInt(sbuf)
  19.     if (guess == num) {
  20.         println("You win!")
  21.         return
  22.     }
  23.     // we won't get here if guess == num
  24.     if (guess < num) {
  25.         println("Too low!")
  26.         doGuessing(num)
  27.     }
  28.     else {
  29.         println("Too high!")
  30.         doGuessing(num)
  31.     }
  32. }
  33. 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!




Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.




Posted by Scripter
,