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 Collections and Control Flow Control Flow With Conditional Statements Working With Logical Operators

completely lost in this code challenge

For this challenge, we'd like to know in a range of values from 1 to 100, how many numbers are both odd, and a multiple of 7.

To start us off, I've written a for loop to iterate over the desired range of values and named the local constant n. Your job is to write an if statement inside the for loop to carry out the desired checks.

If the number is both an odd number and a multiple of 7, append the value to the results array provided.

Hint: To check for an odd number use the not operator to check for "not even"

Can somebody give me a step by step breakdown in how to do this, please?!

operators.swift
var results: [Int] = []

for n in 1...100 {


    // End code 
}

2 Answers

Mathieu St-Vincent
Mathieu St-Vincent
9,244 Points

It can be encapsulated in a single if

var results: [Int] = []

for n in 1...100 {

    if(n % 7 == 0 && n % 2 != 0) {
        results.append(n)
    }
    // End code
}

By using the modulo, we can find the remainder after the division of one number to another.

IF the remainder of dividing n with 7 equals 0, it means it is a multiple of 7

AND if the remainder of dividing n with 2 doesn't equal (!=) 0, it means the number is not even, so it is odd.

With all conditions met in the single IF means it is true, so we can append(n) to the results array.

two questions... How did you know to divide it by 0 and that you needed to use the remainder operator to solve this problem? Can you go into a little more detail for more its still not clicking for me