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 Loops Working with Loops

Yen Ho
seal-mask
.a{fill-rule:evenodd;}techdegree
Yen Ho
Full Stack JavaScript Techdegree Student 4,708 Points

i dont really understand the question: Using the value of counter as an index value, retrieve each value from the array.

please explain it to me what im being asked for and how to solve it. if possible, pls teach me why that is a solution for this problem. Thanks

while.swift
let numbers = [2,8,1,16,4,3,9]
var sum = 0
var counter = 0
while counter < numbers.count {
 print(numbers[counter])
    counter++
}



// Enter your code below

1 Answer

David Papandrew
David Papandrew
8,386 Points

You have the while loop setup properly, so let's focus on step 2. Step 2 asks you to sum the numbers in the array.

Since you have a counter that starts at 0 and increments every time the loop is run, you will use the counter to reference each index location in the array. For instance, on the first loop, you would want to grab the first array item with numbers[0] and add it to the sum. Counter is zero. So you use the counter variable instead of zero: numbers[counter]. On the next loop iteration, counter is 1. So now the value from numbers[1] will be added to the sum (of course, the code represents this as numbers[counter], but the value of counter at the start of the second loop is 1. And so it goes as long as the counter is < numbers.count.

let numbers = [2,8,1,16,4,3,9]
var sum = 0
var counter = 0
while counter < numbers.count {
    sum += numbers[counter]
    counter++
}