📖 Scenario: You are creating a simple program to decide if a person is eligible to vote based on their age.
🎯 Goal: Build a Kotlin program that uses an if-else expression to assign a message about voting eligibility.
📋 What You'll Learn
Create an age variable with a specific value
Create a variable votingMessage that uses an if-else expression to assign the correct message
Use the exact messages: "Eligible to vote" and "Not eligible to vote"
Print the votingMessage variable
💡 Why This Matters
🌍 Real World
Deciding eligibility or status based on conditions is common in apps like voting systems, age verification, or access control.
💼 Career
Understanding if-else expressions is fundamental for writing clear and concise Kotlin code in many software development roles.
Progress0 / 4 steps
1
Create the age variable
Create an age variable of type Int and set it to 20.
Kotlin
Hint
Use val age: Int = 20 to create the variable.
2
Create the votingMessage variable with if-else expression
Create a variable called votingMessage and assign it using an if-else expression that sets it to "Eligible to vote" if age is 18 or more, otherwise "Not eligible to vote".
Kotlin
Hint
Use val votingMessage = if (age >= 18) "Eligible to vote" else "Not eligible to vote".
3
Use the if-else expression to assign the message
Make sure the votingMessage variable uses the if-else expression exactly as if (age >= 18) "Eligible to vote" else "Not eligible to vote".
Kotlin
Hint
Check that the if-else expression is exactly as required.
4
Print the votingMessage
Write a println statement to print the votingMessage variable.
Kotlin
Hint
Use println(votingMessage) to display the message.
Practice
(1/5)
1. What does the following Kotlin code do? val result = if (score > 50) "Pass" else "Fail"
easy
A. Assigns "Pass" to result if score is greater than 50, otherwise "Fail"
B. Assigns true if score is greater than 50, otherwise false
C. Throws an error because else is missing
D. Assigns the value of score to result
Solution
Step 1: Understand the if-else expression
The code uses if-else as an expression to assign a value to result based on the condition score > 50.
Step 2: Evaluate the condition and assignment
If score is greater than 50, result gets "Pass"; otherwise, it gets "Fail".
Final Answer:
Assigns "Pass" to result if score is greater than 50, otherwise "Fail" -> Option A
Quick Check:
If-else expression assigns value based on condition [OK]
Hint: If-else expression returns a value, not just controls flow [OK]
Common Mistakes:
Forgetting the else part causes a syntax error
Thinking if-else is only for flow, not value assignment
Confusing condition with assignment
2. Which of the following is the correct syntax for assigning a value using if-else expression in Kotlin?
easy
A. val x = if (a > b) 10 else 20
B. val x if (a > b) = 10 else = 20
C. val x = if a > b then 10 else 20
D. val x = if (a > b) { 10 } else { 20 } else
Solution
Step 1: Review Kotlin if-else expression syntax
The correct syntax uses if(condition) value1 else value2 without extra keywords or misplaced braces.
Step 2: Compare options with correct syntax
val x = if (a > b) 10 else 20 matches the correct syntax: val x = if (a > b) 10 else 20.
Final Answer:
val x = if (a > b) 10 else 20 -> Option A
Quick Check:
Correct if-else assignment syntax is val x = if (cond) val1 else val2 [OK]
Hint: Remember: if-else expression is inside assignment with = [OK]
Common Mistakes:
Using 'then' keyword which Kotlin does not have
Misplacing equals signs around else
Adding extra else after braces
3. What is the output of this Kotlin code?
val age = 18
val status = if (age >= 18) "Adult" else "Minor"
println(status)
medium
A. Minor
B. Adult
C. 18
D. Compilation error
Solution
Step 1: Check the condition age >= 18
Since age is 18, the condition age >= 18 is true.
Step 2: Determine the assigned value to status
Because the condition is true, status is assigned "Adult".
Final Answer:
Adult -> Option B
Quick Check:
Condition true assigns "Adult" [OK]
Hint: If condition true, if-else expression returns first value [OK]
Common Mistakes:
Assuming >= 18 is false for 18
Printing age instead of status
Confusing syntax causing compile error
4. Identify the error in this Kotlin code:
val x = if (num > 0) "Positive"
medium
A. Incorrect variable declaration
B. Wrong comparison operator
C. Missing else branch in if-else expression
D. No error, code is correct
Solution
Step 1: Check if-else expression completeness
An if-else expression used for assignment must have both if and else branches.
Step 2: Identify missing else branch
The code only has if (num > 0) "Positive" but no else part, causing a syntax error.
Final Answer:
Missing else branch in if-else expression -> Option C
Quick Check:
If-else expression must include else [OK]
Hint: Always include else when assigning with if-else expression [OK]
Common Mistakes:
Omitting else branch
Thinking if alone can assign value
Ignoring compiler error messages
5. You want to assign a grade based on score using if-else expression assignment in Kotlin. Which code correctly assigns "A" if score >= 90, "B" if score >= 80, else "C"?
hard
A. val grade = if (score >= 90) "A" else if score >= 80 "B" else "C"
B. val grade = if (score >= 90) "A" else (score >= 80) "B" else "C"
C. val grade = if (score >= 90) { "A" } else if (score >= 80) { "B" } else { "C" } else
D. val grade = if (score >= 90) "A" else if (score >= 80) "B" else "C"