The key here lies in the technique. The question I linked to in the comment has the basis. The algorithm is as follows:
1) Start at the first n elements
2) Increment the final element until it is at the final position
3) Move the previous element ahead by one, and reset the final element to the position after the previous element
4) Repeat step 2 and step 3 until the previous element and the last element are in the final two positions
5) Move the previous-previous element ahead by 1, and reset the two elements at the end to the position after the previous-previous element
6) repeat this process until all elements are at the end
Simplified it becomes this:
While the first element of the combo array is less than the difference between the original array and the combo array do the following:
While the last element of the combo array is less than the length of the count of the original array increment last element and take the resulting indices from the original array
After that, check the previous element. If it is less than lastElement -1 then increment it and set lastElement to previous element + 1 and repeat the above step. If not, then check the previous element, and so on. If they are all sequential, then you are finished.
To aid in this algorithm, I suggest making an array of indices that matches the size of your combination. Let's say you want the 3-element combinations of a 5-element array. Make a 3 element array of the first indices:
[0,1,2]
Applying the algorithm above first you would increment the final element until the end [0,1,3] [0,1,4]
Then, increment the previous one and reset the final one [0,2,3]
Repeat the above steps until the last two are in the final positions [0,2,4] [0,3,4]
Move along down the line [1,2,3] [1,2,4] [1,3,4] [2,3,4] and now all the indices are in the final position and you are finished.
I'm not going to write this out in Objective-C, though, because implementing an algorithm is something that is required of every programmer. I think this will be sufficient information for you to succeed.