Bird
Raised Fist0
Kotlinprogramming~10 mins

Arithmetic operators in Kotlin - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - Arithmetic operators
Start
↓
Evaluate operands
↓
Apply operator (+, -, *, /, %)
↓
Compute result
↓
Use result in expression or output
↓
End
This flow shows how Kotlin evaluates arithmetic expressions by first evaluating operands, then applying the operator to compute the result.
Execution Sample
Kotlin
fun main() {
  val a = 10
  val b = 3
  val sum = a + b
  val div = a / b
  println("sum = $sum, div = $div")
}
This code adds and divides two numbers, then prints the results.
Execution Table
StepExpressionOperandsOperatorResultExplanation
1a = 10--10Assign 10 to variable a
2b = 3--3Assign 3 to variable b
3sum = a + b10, 3+13Add 10 and 3 to get 13
4div = a / b10, 3/3Integer division of 10 by 3 gives 3
5println--sum = 13, div = 3Print the results
6----Program ends
💡 Program ends after printing the results.
Variable Tracker
VariableStartAfter Step 1After Step 2After Step 3After Step 4Final
a-1010101010
b--3333
sum---131313
div----33
Key Moments - 2 Insights
Why does dividing 10 by 3 give 3 instead of 3.333?
Because both a and b are integers, Kotlin performs integer division which discards the decimal part. See step 4 in the execution_table.
What happens if we use + operator with two variables?
The + operator adds the values of the two variables. In step 3, a + b adds 10 and 3 to get 13.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table at step 3, what is the result of a + b?
A13
B30
C7
DError
💡 Hint
Check the 'Result' column in step 3 of the execution_table.
At which step does the program perform integer division?
AStep 2
BStep 4
CStep 5
DStep 3
💡 Hint
Look for the division operator '/' in the 'Operator' column.
If variable b was changed to 4, what would be the new result of a / b at step 4?
A2.5
B3
C2
D4
💡 Hint
Integer division truncates decimals; 10 / 4 equals 2 in integer division.
Concept Snapshot
Arithmetic operators in Kotlin:
- + addition
- - subtraction
- * multiplication
- / integer division (if both operands are Int)
- % modulus (remainder)
Operands are evaluated first, then operator applied.
Integer division discards decimals.
Full Transcript
This lesson shows how Kotlin uses arithmetic operators to calculate values. First, variables a and b are assigned 10 and 3. Then sum is calculated by adding a and b, resulting in 13. Next, div is calculated by dividing a by b using integer division, which results in 3 because decimals are discarded. Finally, the results are printed. Key points include understanding integer division and how operators work step-by-step.

Practice

(1/5)
1. Which arithmetic operator in Kotlin is used to find the remainder of a division?
easy
A. The / operator
B. The % operator
C. The * operator
D. The - operator

Solution

  1. Step 1: Understand the meaning of each operator

    The % operator gives the remainder after division, / divides, * multiplies, and - subtracts.
  2. Step 2: Identify the operator for remainder

    The % operator is specifically for remainder calculation in Kotlin.
  3. Final Answer:

    The % operator -> Option B
  4. Quick Check:

    Remainder operator = % [OK]
Hint: Remember % means remainder in math and Kotlin [OK]
Common Mistakes:
  • Confusing / with %, thinking / gives remainder
  • Using * or - for remainder
  • Mixing up operators with similar symbols
2. Which of the following is the correct way to write a multiplication operation in Kotlin?
easy
A. val result = 5 x 3
B. val result = 5 . 3
C. val result = 5 / 3
D. val result = 5 * 3

Solution

  1. Step 1: Recall Kotlin syntax for multiplication

    Kotlin uses * for multiplication, not x or dot.
  2. Step 2: Check each option

    val result = 5 * 3 uses * correctly; others are invalid syntax or different operations.
  3. Final Answer:

    val result = 5 * 3 -> Option D
  4. Quick Check:

    Multiplication operator = * [OK]
Hint: Use * for multiplication, not x or dot [OK]
Common Mistakes:
  • Using x instead of *
  • Using dot for multiplication
  • Confusing division / with multiplication
3. What is the output of the following Kotlin code?
val a = 10
val b = 3
println(a / b)
medium
A. 3
B. 3.3333333
C. 3.0
D. Error

Solution

  1. Step 1: Identify variable types and operation

    a and b are integers, so a / b does integer division.
  2. Step 2: Calculate integer division result

    10 divided by 3 is 3.333..., but integer division drops decimals, so result is 3.
  3. Final Answer:

    3 -> Option A
  4. Quick Check:

    Integer division drops decimals = 3 [OK]
Hint: Integer division drops decimals; result is integer [OK]
Common Mistakes:
  • Expecting decimal result with integer division
  • Confusing / with floating-point division
  • Thinking output is 3.0 or error
4. The following Kotlin code has an error. What is the problem?
val x = 7
val y = 2
val result = x / y.toDouble()
println(result)
medium
A. Cannot call toDouble() on y
B. Division operator / cannot mix Int and Double
C. No error, code runs and prints 3.5
D. Missing explicit type declaration for result

Solution

  1. Step 1: Analyze the types involved in division

    y.toDouble() converts y to Double, so x / y.toDouble() divides Int by Double.
  2. Step 2: Check Kotlin's handling of mixed numeric types

    Kotlin automatically converts Int to Double for mixed operations, so no error occurs.
  3. Final Answer:

    No error, code runs and prints 3.5 -> Option C
  4. Quick Check:

    Mixed Int/Double division allowed = 3.5 [OK]
Hint: Kotlin auto-converts Int to Double in mixed division [OK]
Common Mistakes:
  • Thinking toDouble() causes error
  • Believing mixed types cause syntax error
  • Expecting need for explicit type declaration
5. You want to calculate the average of three large integer scores (e.g., 1000000000 each) in Kotlin and get a precise decimal result. Which code snippet correctly does this?
hard
A. val avg = (score1.toDouble() + score2.toDouble() + score3.toDouble()) / 3
B. val avg = (score1 + score2 + score3) / 3.0
C. val avg = (score1 + score2 + score3).toDouble() / 3
D. val avg = (score1 + score2 + score3) / 3

Solution

  1. Step 1: Understand integer division problem

    Dividing integers by integer 3 causes integer division, losing decimals.
  2. Step 2: Convert all scores to Double before division

    Converting each score to Double ensures floating-point division and precise average.
  3. Step 3: Check each option

    val avg = (score1.toDouble() + score2.toDouble() + score3.toDouble()) / 3 converts all scores to Double before adding and dividing, giving correct decimal average.
  4. Final Answer:

    val avg = (score1.toDouble() + score2.toDouble() + score3.toDouble()) / 3 -> Option A
  5. Quick Check:

    Convert all to Double before division for decimal average [OK]
Hint: Convert all integers to Double before dividing for decimals [OK]
Common Mistakes:
  • Dividing integers directly causing integer division
  • Converting sum to Double after integer division
  • Converting only one score to Double
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard