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

Stuck

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 indeed 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"

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

for n in 1...100 {
    // Enter your code below

    // End code 
}

1 Answer

Chase Marchione
Chase Marchione
155,055 Points

Hi Josef,

  • We could write an if statement to check if each number from 1 to 100 (the for loop will cycle through each of these numbers, going through them one at a time) is a multiple of 7. This means that n must divide into 7 without a remainder (for example, 14 divided by 7 leaves no remainder, because it leaves us with the integer of 2, with no extra decimal value.) We use the modulus operator (%) for remainder division.

  • Additionally, we need to check if each n is odd: for a number to be odd, that means it leaves a remainder when it's divided by 2 (if it didn't, that would mean the number is even.) The logical '&&' operator could be used to make our if statement check for both conditions.

  • To add each n to the results array, we can use the append method.

var results: [Int] = []

for n in 1...100 {
    // Enter your code below
    if (n % 7 == 0 && n % 2 != 0) {
    results.append(n)
    }
    // End code 
}

Hope this helps!

thank you so much for the explanation.