연습장/백준

백준(Kotlin)_ 2557번 (A+B)

아이른 2024. 2. 1. 16:50

문제

두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)

출력

첫째 줄에 A+B를 출력한다.

 

예제 입력 1 복사

1 2

예제 출력 1 복사

3

힌트

import java.util.Scanner

fun main(args: Array<String>) {
    val sc: Scanner = Scanner(System.`in`)
    var a = sc.nextInt()
    var b = sc.nextInt()
    println(a+b)
}

이제 겨우 문법을 조금 익힌 정도라서 아직 백준 알고리즘을 혼자서 풀기에는 한계가 있다. 예제 소스를 보면서 하나하나 의미를 뜯어보고 알고 싶다.

 

Kotlin 알고리즘 문제를 풀려고 하면 키보드 입력을 받아야 한다. java에서 제공하는 scanner(스캐너)를 사용하는 방법은 아래와 같다. 

fun main(){
   val reader = Scanner(System.`in`)
   reader.next()
   readet.nextInt() // 등 java에서 사용했던 math문법을 사용할 수 있음.
}
/**
*next() : 통째로가 사용자가 입력한 문자열 값(엔터치기 전 공백은 포함되지 않는다.)
*nextInt() : 통째로가 사용자가 입력한 정수 값
*nextLine() : 통째로가 사용자가 입력한 문자열 값(엔터치기 전 공백까지 포함한다.)
*/

 

 

Scanner가 왜 들어가는지에 대해서 알게 되었다.

Kotlin 진입 함수 가변 개수의 인수를 허용한 함수
fun main() {
    println("Hello world!")
}
fun main(args: Array<String>) {
    println(args.contentToString())
}

 

Kotlin의 vararg 키워드를 사용하면 가변 개수의 인수를 허용하는 함수를 만들 수 있다. 이는 함수 정의에서 인수의 수를 명시적으로 지정하지 않고도 임의의 수의 인수를 취할 수 있는 함수를 작성하려는 경우에 유용할 수 있다.

 

import java.util.*

fun main(args:Array<String>) = with(Scanner(System.`in`)) {
	println(nextInt() + nextInt())
}

 

(args:Array<String> 생략가능. )

'연습장 > 백준' 카테고리의 다른 글

백준(Kotlin)_ 18108번  (0) 2024.02.06
백준(Kotlin)_ 10926번  (0) 2024.02.06
백준(Kotlin)_ 10869번 (사칙연산)  (0) 2024.02.05
백준(Kotlin)_ 10998번 (A/B)  (0) 2024.02.02
백준(Kotlin)_ 1000번 (A-B)  (0) 2024.02.02