How to get the number of the day from the beginning of the year to a given date in Kotlin

1 Answer

0 votes
fun isLeapYear(year: Int): Boolean {
    return (year % 4 == 0) && ((year % 100 != 0) || (year % 400 == 0))
}

fun getDayOfYear(year: Int, month: Int, day: Int): Int {
    // cumulative days at the end of each month (non-leap year)
    val days = arrayOf(0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334)

    return if (isLeapYear(year) && month > 2) {
        days[month - 1] + day + 1
    } else {
        days[month - 1] + day
    }
}

fun main() {
    val dayOfYear = getDayOfYear(2023, 5, 15)
    
    println(dayOfYear) 
}



/*
run:

135

*/

 



answered Dec 13, 2025 by avibootz

Related questions

...