Anonymous Kotlin function: Sum of odd numbers in a list
Write an anonymous Kotlin function to calculate the sum of all odd numbers in a list.
Pre-Knowledge (Before You Start!)
Before solving this exercise, you should be familiar with the following concepts:
- Lists: A list in Kotlin is an ordered collection of elements. Here, we are working with a list of integers.
- Anonymous Functions: Anonymous functions in Kotlin allow us to define functions without explicitly naming them. These functions can be assigned to variables.
- Loops: Understanding how to iterate over a list using a for loop is essential to process each element.
- Modulo Operator (%): The modulo operator is used to determine whether a number is even or odd. If number % 2 != 0, the number is odd.
- Conditional Statements: You need to use an if condition to check if a number is odd before adding it to the sum.
Hints (Try Before Looking at the Solution!)
Here are some hints to help you solve the problem:
- Hint 1: Define an anonymous function that takes a list of integers as a parameter and returns an integer.
- Hint 2: Initialize a variable to store the sum of odd numbers, starting at 0.
- Hint 3: Iterate through the list using a for loop.
- Hint 4: Check if a number is odd using number % 2 != 0. If true, add it to the sum.
- Hint 5: Return the final sum after iterating through all numbers in the list.
Sample Solution:
Kotlin Code:
fun main() {
val numbers = listOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
val sumOfOdds: (List<Int>) -> Int = fun(list: List<Int>): Int {
var sum = 0
for (number in list) {
if (number % 2 != 0) {
sum += number
}
}
return sum
}
val oddSum = sumOfOdds(numbers)
println("Original list of elements: $numbers")
println("Sum of odd numbers: $oddSum")
}
Sample Output:
Original list of elements: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] Sum of odd numbers: 36
Explanation:
In the above exercise -
- We define an anonymous function called sumOfOdds with the type (List<Int>) -> Int. It takes a list of integers as its parameter and returns the sum of all odd numbers in the list as an integer.
- Inside the sumOfOdds function, we initialize a variable sum to keep track of the sum, initially set to 0.
- We iterate through each number in the input list using a for loop. If a number is odd (i.e., not divisible by 2), we add it to the sum variable.
- In the end, we return the sum of all odd numbers in the list, which represents the final value of sum.
Kotlin Editor:
Previous: Count vowels in a string.
Next: Concatenation of two strings.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics