Search code examples
swiftfor-in-loop

how can I add a percentage to an array of salaries with a for in loop using swift


I have done this using a repeat while loop and it ran. How can I do this with a for in loop

var salaries = [45000.0, 100000.0, 54000.0, 20000.0]
var i = 0
repeat {
    salaries[i] = salaries[i] + (salaries[i] * 0.1) 
    i += 1
} while (i < salaries.count)

print(salaries)


Solution

  • You can do it using higher order function map

    var salaries = [45000.0, 100000.0, 54000.0, 20000.0]
    salaries = salaries.map {$0 + ($0 * 0.1)}
    
    print(salaries)
    

    also do it using for in loop

    var salaries = [45000.0, 100000.0, 54000.0, 20000.0]
    
    
    for (index,salary) in salaries.enumerated() {
        
        salaries[index] = salary + (salary * 0.1)
        
    }
    print(salaries)