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

Retrieving a value and then adding it

How would I retrieve a value and then add it to the variable sum

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

while counter < 7{
sum = counter + numbers[counter] 
counter++
}
// Enter your code below

1 Answer

Luis Villarreal
Luis Villarreal
10,040 Points

Hi Tejas Pulavarti, Lets take a look at your code for a bit. after while we need to include (). Also, we don't want to hard code the number 7 because the array can change. What if you add more numbers to the array or take away numbers. You will need to change the number every time you make a change to the array. Instead we use numbers.count this will count the numbers in the array for you.

I have provided my solution to this task below your code.

Your Code:

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

while counter < 7{
sum = counter + numbers[counter]

 // on this section above we  are trying to add all the numbers of the array. We don't want to use the counter because the counter will change every time it goes through the loop. instead we use sum. (sum = sum + number[counter] or sum += number[counter])

counter++
}
// Enter your code below

Solution:

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

// Enter your code below

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