i create array of numbers, trying fill in rule or random size nxn, looking amount in each of diagonals , deduce it. understand errors noted in comments. doing wrong? thank you!
func diagonals (n:int) -> string{ var sumfirst: int var sumsecond: int var multarray = array(count: n, repeatedvalue: array(count: n, repeatedvalue: 0)) print(multarray) //create 2d array nxn initialisation var in multarray { var k in multarray { multarray[i][k] = i+k // fill array elements sum of indices (error line) or can fill random, how? if i==k { //check element on main diagonal sumfirst += multarray[i][k] // sum (error line) } if (i+k) == n { //check element on secondary diagonal (error line) sumsecond += multarray[i][k] // sum (error line) } } } return "sum elemets on main diagonal =\(sumfirst) , second =\(sumsecond)" } diagonals(3)
solved!
func diagonals (n:int) -> string{ var sumfirst = 0 var sumsecond = 0 var multarray = array(count: n, repeatedvalue: array(count: n, repeatedvalue: 0)) print(multarray) //create 2d array nxn initialisation indexi in multarray.indices { indexk in multarray.indices { multarray[indexi][indexk] = int(arc4random_uniform(uint32(n))) // fill array elements randomly if indexi==indexk { //check element on main diagonal sumfirst += multarray[indexi][indexk] // sum } if (indexi+indexk + 1) == n { //check element on secondary diagonal sumsecond += multarray[indexi][indexk] // sum } } } print(multarray) return "sum elemets on main diagonal =\(sumfirst) , second =\(sumsecond)" } diagonals(3)
Comments
Post a Comment