📖 Scenario: You are creating a simple access control system for a small event. You need to check if a person meets certain conditions to enter.
🎯 Goal: Build a Kotlin program that uses logical operators &&, ||, and ! to decide if a person can enter the event.
📋 What You'll Learn
Create variables for age and hasInvitation
Create a variable for minimum age allowed
Use logical operators to check if the person is allowed
Print the result as true or false
💡 Why This Matters
🌍 Real World
Access control systems often check multiple conditions like age and invitation status before allowing entry.
💼 Career
Understanding logical operators is essential for programming decisions in apps, websites, and software that require condition checks.
Progress0 / 4 steps
1
Create initial data variables
Create a variable age with value 20 and a variable hasInvitation with value true.
Kotlin
Hint
Use val to create variables. Assign 20 to age and true to hasInvitation.
2
Add minimum age configuration
Create a variable minAge and set it to 18.
Kotlin
Hint
Use val minAge = 18 to set the minimum age allowed.
3
Use logical operators to check access
Create a variable canEnter that is true if age is greater than or equal to minAgeandhasInvitation is true. Use the && operator.
Kotlin
Hint
Use parentheses to compare age >= minAge and combine it with hasInvitation using &&.
4
Print the access result
Print the value of canEnter using println.
Kotlin
Hint
Use println(canEnter) to show the result.
Practice
(1/5)
1. Which logical operator in Kotlin means AND and returns true only if both conditions are true?
easy
A. ||
B. !
C. &&
D. &
Solution
Step 1: Understand the meaning of && operator
The && operator checks if both conditions are true and returns true only then.
Step 2: Compare with other operators
The || operator means OR, ! means NOT, and & is a bitwise operator, not logical AND.
Final Answer:
&& -> Option C
Quick Check:
AND operator = && [OK]
Hint: AND means both true, use && [OK]
Common Mistakes:
Confusing && with ||
Using & instead of &&
Thinking ! means AND
2. Which of the following is the correct syntax to negate a boolean variable isActive in Kotlin?
easy
A. !isActive
B. not isActive
C. isActive!
D. ~isActive
Solution
Step 1: Recall Kotlin negation syntax
In Kotlin, the NOT operator is written as ! before the variable.
Step 2: Check each option
!isActive uses !isActive which is correct. not isActive is invalid syntax, C places ! after variable which is wrong, D uses ~ which is bitwise NOT invalid for booleans.
Final Answer:
!isActive -> Option A
Quick Check:
Negate with ! before variable [OK]
Hint: Put ! before variable to negate [OK]
Common Mistakes:
Putting ! after variable
Using 'not' keyword incorrectly
Using bitwise ~ for negation
3. What is the output of this Kotlin code?
val a = true
val b = false
println(a && !b || b)
medium
A. false
B. true
C. Compilation error
D. null
Solution
Step 1: Evaluate !b
b is false, so !b is true.
Step 2: Evaluate a && !b
a is true, !b is true, so a && !b is true.
Step 3: Evaluate (a && !b) || b
True || false is true.
Final Answer:
true -> Option B
Quick Check:
True AND NOT false OR false = true [OK]
Hint: Evaluate NOT first, then AND, then OR [OK]
Common Mistakes:
Ignoring NOT precedence
Mixing AND and OR order
Assuming false output
4. Find the error in this Kotlin code snippet:
val x = true
val y = false
if x && y {
println("Both true")
}
medium
A. Missing parentheses around condition in if statement
B. Using && instead of ||
C. Incorrect println syntax
D. Variables x and y not declared
Solution
Step 1: Check if statement syntax
Kotlin requires parentheses around the condition in if statements.
Step 2: Identify the error
The code uses if x && y without parentheses, which causes a syntax error.
Final Answer:
Missing parentheses around condition in if statement -> Option A
Quick Check:
if condition needs parentheses [OK]
Hint: Always put () around if conditions [OK]
Common Mistakes:
Omitting parentheses in if
Confusing && with ||
Wrong println usage
5. You want to check if a user is logged in and has admin rights before allowing access. Which Kotlin condition correctly uses logical operators for this?
val loggedIn = true
val isAdmin = false
// Choose the correct if condition
hard
A. if (loggedIn || isAdmin) { println("Access granted") }
B. if (!loggedIn || !isAdmin) { println("Access granted") }
C. if (!loggedIn && isAdmin) { println("Access granted") }
D. if (loggedIn && isAdmin) { println("Access granted") }
Solution
Step 1: Understand the requirement
Access is allowed only if user is logged in AND has admin rights.
Step 2: Analyze each condition
if (loggedIn && isAdmin) { println("Access granted") } uses && to require both loggedIn and isAdmin true. if (loggedIn || isAdmin) { println("Access granted") } allows access if either is true, which is wrong. The remaining options use negations or incorrect logic, which do not meet requirement.
Final Answer:
if (loggedIn && isAdmin) { println("Access granted") } -> Option D
Quick Check:
Use AND to require both conditions true [OK]
Hint: Use && to require both true for access [OK]
Common Mistakes:
Using || instead of &&
Negating conditions wrongly
Allowing access if only one is true
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.