Y_Ding

내배캠 정예반(조건문/반복문) 문제풀이 본문

TodayILearned/Android&Kotlin

내배캠 정예반(조건문/반복문) 문제풀이

YJ_ILY 2023. 8. 11. 19:15

[1] 사용자에게 정수를 입력받아, 홀짝 구분하기 예) 입력: 10, 출력: 짝수입니다. / 0, null은 예외처리

fun main(){
    val num = readLine()?.toIntOrNull()

    if(num == 0 || num == null){
        print("홀수나 짝수가 아닙니다.")
    } else if(num%2 == 0) {
        print("짝수입니다.")
    } else {
        print("홀수입니다.")
    }
}

[2] 정수를 5개 입력받아 합계 구하기 (예시: 정수 5개 입력 1,2,3,4,5 -> 더한 값 15)

fun main(){
    var num1 = readLine()!!.toInt()
    var num2 = readLine()!!.toInt()
    var num3 = readLine()!!.toInt()
    var num4 = readLine()!!.toInt()
    var num5 = readLine()!!.toInt()

    var result = num1+num2+num3+num4+num5

    print("$result")
}

[3] 문자열에서 특정 알파벳 ‘a’의 개수를 세주세요. 입력 예)apple 출력 예) 1

fun main(){
    var name = "apple"
    //입력을 받아서 할 경우는 readLine().toString()

    print(name.count{it == 'a'})
}

[6] 월을 입력받아 해당 월이 어떤 계절에 속하는지를 판별하기

(계절의 기준은 3월~5월까지 봄입니다., 6~8월:여름.. 입력: 4, 출력:봄입니다.)

fun main(){
    var month = readLine()!!.toInt()

    if(month in 3..5){
        print("봄입니다.")
    }else if(month in 6..8){
        print("여름입니다.")
    }else if(month in 9..11){
        print("가을입니다.")
    }else if(month == 12 || month == 1 || month == 2){
        print("겨울입니다.")
    } else {
        print("잘못된 입력입니다.")
    }
}

[9] down to 를 활용하여 20이하 짝수 출력하기 (출력예: 20,18,16……..)

fun main(){
    for(i in 20 downTo 0){
        if(i %2 == 0){
            println("$i")
        }
    }
}

[13] 1부터 100까지의 숫자 중에서 홀수의 곱을 계산하세요.

fun main(){
        var result : Long = 1

        for(i in 1..100){
            if(i % 2 == 1) {
               result *= i
            }
        }
        println("$result")
    }

[14]사용자로부터 정수(1~9)를 입력받아 해당 숫자에 대한 구구단을 출력하는 프로그램을 작성하세요.

(입력 예외처리 필요)

fun main() {
    val num = readLine()!!.toIntOrNull()

    if (num == 0 || num == null) {
        print("잘못된 입력입니다.")
    } else {
        if (num in 1..9) {
            for (j in 1..9) {
                var result = num * j
                println("$num * $j = $result")
            }
        }
    }
}

[18] 간단한 자판기를 시뮬레이션하는 프로그램을 만드세요. 사용자는 숫자(1-3)를 입력하여 음료를 선택하고, 프로그램은 선택한 음료를 표시합니다. (음료는 각자 알아서..)

fun main(){
    val venderMachine = readLine()!!.toInt()

    when(venderMachine){
        1 -> print("콜라")
        2 -> print("사이다")
        3 -> print("이온음료")
        else -> print("잘못된 입력입니다.")
    }
}

[25] 사용자에게 학생 5명의 점수를 입력 받아 평균 성적을 출력하시오. 

fun main(){
    var student1 = readLine()!!.toInt()
    var student2 = readLine()!!.toInt()
    var student3 = readLine()!!.toInt()
    var student4 = readLine()!!.toInt()
    var student5 = readLine()!!.toInt()
    var average = (student1 + student2 + student3 + student4 + student5) / 5

    print("$average")
}

[27] 시험 점수를 사용자에게 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하세요.

fun main(){
    var score = readLine()!!.toInt()

    if(score in 90..100){
        print("A")
    }else if(score in 80..89){
        print("B")
    }else if(score in 70..79){
        print("C")
    }else if(score in 60..69){
        print("D")
    } else{
        print("F")
    }
}

[28] 특정 이름(본인이름)을 가진 사람일 때 '환영합니다 000님'문구 출력, 특정 이름이 아닐 경우 '회원가입을 해주세요'문구 출력하는 프로그램 작성하세요. 

fun main(){
    val name = "류연주"

    if(name == "류연주"){
        print("환영합니다 $name 님.")
    } else{
        print("회원가입을 해주세요.")
    }
}

[31] 각도를 입력받아 각도기 (0 ~90도(미만) -> 예각, 90-> 직각, 90~180-> 둔각, 180 -> 평각) 출력하기

fun main(){
    val angle = readLine()!!.toInt()

    when(angle){
        in 0..89 -> print("예각")
        90 -> print("직각")
        in 91..179 -> print("둔각")
        180 -> print("평각")
        else -> print("잘못된 입력입니다.")
    }
}

[34] 1부터 10까지의 숫자 중에서 짝수만 출력하기

fun main(){
    for(i in 1 .. 10){
        if(i % 2 == 0){
            println("$i")
        }
    }
}

[37] 10부터 1까지의 숫자중 짝수를 거꾸로 출력하시오 

fun main(){
    for(i in 10 downTo 1){
        if(i % 2 == 0){
            println("$i")
        }
    }
}

[39] 5줄짜리 이중 for루프를 사용해서 역삼각형(직각삼각형)으로 별찍기. 

fun main() {

        for(j in 5 downTo 1){
            for(k in 1.. j){
                print("*")
            }
            println()
        }
    }

[40] 사용자에게 월을 입력받아 계절 판별하기(when문 사용) 4 > 봄입니다.

fun main(){
    var month = readLine()!!.toInt()

    when(month) {
        in 3..5 -> print(" 봄입니다.")
        in 6..8 -> print("여름입니다.")
        in 9..11 -> print("가을입니다.")
        12, 1, 2 -> print("겨울입니다.")
        else -> ("잘못된 입력입니다.")
    }
}

[41] 1부터 100까지의 수 중 2의 배수이면서 7의 배수인 숫자를 출력하세요

fun main(){
   for(i in 1..100){
       if(i % 2 == 0 && i % 7 == 0 ){
           println("$i")
       }
   }
}

[42] 1부터 20까지 숫자를 오름차순, 내림차순으로 한번씩 나열하세요 (출력 1,2,3,4,… 20,19,18……)

fun main(){
   for(i in 1..20){
           println("$i")
   }
    println("=====================")
    for(j in 20 downTo 1){
        println("$j")
    }
}

[46] 두개의 주사위를 던지고 합이 10이 나오는 경우의 수 (6,4), (4,6),(5,5)

fun main(){

   for (dice1 in 1..6){
       for(dice2 in 1..6){
               if(dice1 + dice2 == 10){
               print("($dice1,$dice2)")
           }
       }
   }
}

[47] 1부터 100까지 5의 배수를 출력하세요. 

fun main(){
    for(i in 1..100){
        if(i % 5 == 0){
            println("$i")
        }
    }
}

'TodayILearned > Android&Kotlin' 카테고리의 다른 글

9조 KPT 회고  (0) 2023.08.21
내배캠 팀프로젝트  (0) 2023.08.17
내배캠 개인과제 TIL  (0) 2023.08.10
내배캠 개인과제 TIL (08.08~08.09)  (2) 2023.08.09
내배캠 Android TIL - Intent  (0) 2023.08.07