Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

iOS Swift 2.0 Basics Swift Operators Working With Operators

Kenton Raiford
Kenton Raiford
5,101 Points

What am I doing incorrect? (Remainder Operator in Swift)

For the first task, we're going to keep it pretty simple and check if we know how to use the reminder and equality operators.

In the editor below, you have two constants - value and divisor. Step 1: Using the remainder operator, compute the remainder given the value and a divisor. Assign this value to a constant named result.

Step 2: When value obtained using a remainder operator is 0, this means that the value is a perfect multiple of the divisor. Compare the value of result to 0 using the equality operator and assign the resulting value to a constant named isPerfectMultiple.

operators.swift
// Enter your code below
let value = 200
let divisor = 5

let someOperation = 20 + 400 % 10 / 2 - 15
let anotherOperation = 52 * 27 % 200 / 2 + 5

// Task 1 - Enter your code below
let result = 200 % 5
// Task 2 - Enter your code below
result == 0
let isPerfectMultiple = 0
result == isPerfectMultiple
Josue Gisber
Josue Gisber
Courses Plus Student 9,332 Points

for the first task, the code looks good except you could use the name of the constant instead of the values. task 2, you start really good by comparing result to 0 which is what the instruction says but in the final part instead of signing the value of 0 to the constant isPerfectMultiple you must assign the value result.

Hope this explenation help you understand how it works!

3 Answers

Brendan Whiting
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Brendan Whiting
Front End Web Development Techdegree Graduate 84,738 Points

You've basically "hard coded" the values into it and they want you to put in the variables instead. That way if the values changed in the future, the code still works.

let result = value % divisor
let isPerfectMultiple = result == 0

And just to clarify - the value that ends up inside the constant "isPerfectMultiple" is a Boolean value - in this case "true" because you're asking if result is zero and it is.

Step 1 was perfect. Step 2 is just about assigning a constant to result when it == 0. Remember "=" is assigning while "==" is equal to.

var iLoveCats = true
//The variable iLoveCats is assigned true

//vs.

if iLoveCats == true { //if iLoveCats is equal to true
print("I love cats.")
} else {
print("I do not love cats.")
}

So the answer is:

// Task 1 - Enter your code below
let result = value % divisor
// Task 2 - Enter your code below
let isPerfectMultiple = result == 0

let result = 200 % 5

result == 0 let isPerfectMultiple = result == 0