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

Tanner Shelton
seal-mask
.a{fill-rule:evenodd;}techdegree
Tanner Shelton
iOS Development Techdegree Student 1,136 Points

How is this not the wrong answer?

This is supposed to add values that are odd and divisible by 7 to an array(which it does in playground) how come this is not working in the challenge?

var results: [Int] = []

for n in 1...100 { if n % 2 != 0 && n % 7 == 0 { results += [n] } }

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

for n in 1...100 {
    // Enter your code below
       if n % 2 != 0 && n % 7 == 0 {
       results += [n]
    }
    // End code 
}

1 Answer

andren
andren
28,558 Points

The code checker can often be quite picky, it asks you to append the items to the array, you are concatenating them to the array. The result of those two actions are exactly the same, but the code is different. And the code checker is looking more at your code than your result for this challenge.

If you add to the array using the append method like this:

var results: [Int] = []

for n in 1...100 {
    // Enter your code below
       if n % 2 != 0 && n % 7 == 0 {
       results.append(n) // Add to the array using append rather than concatenation
    }
    // End code 
}

Then your code will be accepted.