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

Dave Hanna
PLUS
Dave Hanna
Courses Plus Student 2,969 Points

I have no clue what I am doing

//This one might be a bit tricky so let's take it in steps. We have an array of numbers, nothing tricky, you've seen this before. What we want is to compute the sum of the numbers in the array. To do this we're going to use a while loop.

//We have a variable ,sum, that will store the value of the sum of numbers from the array.

//We also have a variable ,counter, which we will use to track the number of iterations of the while loop.

//Step 1: Create a while loop. The while loop should continue as long as the value of counter is less than the number of items in the array. (Hint: You can get that number by using the count property)

let numbers = [2,8,1,16,4,3,9] var sum = 0 var counter = 0

// Enter your code below

1 Answer

Jake Adams
Jake Adams
1,608 Points

You need to start with a while loop that compares counter to the number of items in the numbers array. It's important to note that counter starts at 0, so we want to be sure that we stop the loop as soon as counter is equal to the number of items in the array, otherwise, it will crash when we try to access the array with that counter value.

while counter < numbers.count {
 //sum code here
}

Next, with each iteration of the loop, we want to grab the value from the numbers array and add that to the sum variable. We also want to increment counter by 1.

while counter < numbers.count {
  sum += numbers[counter]
  counter += 1
}

Each iteration will automatically increment counter by 1. So on the first iteration, it will be zero: numbers[0] and the second iteration it will be 1: numbers[1]. The += is shorthand for adding the value on the right hand side of += to the value on the left hand side and setting that new value to the sum variable. It's equivalent to: sum = sum + numbers[counter] or counter = counter + 1