Your problem is you want to write this as if you are still using Excel. MATLAB is not a spreadsheet, but you are still thinking as if "YOU WANT TO USE A SPREADSHEET".
You have a matrix, with columns in it. The columns in a matrix do not have lettered names. So, first, I'll create a matrix with three columns.
So here I have a 10x3 matrix. 10 rows, 3 columns. Each element is an integer from 1 to 5 (in this case.)
Now you want to form something from these rows. How do you access a column of a matrix? Use indexing. So the first column (that which you want to call a) is just M(:,1). So all of the rows of M, but only the first column.
result = M(:,1).*M(:,2).^M(:,3);
You will see I used those dotted operators, .* and .^ to do the computations. That is because I have three vectors of elements, and you wish to do the same computation for each member of those sets of vector elements.
I would strongly recommend that you put the result of that computation into a new variable, not append it to your array. Learn to use named variables. Again, you are still thinking as if you are using a spreadsheet when you decide to append the result as a new column of the array.
Or, you can solve this using a simple loop.
result(ind) = M(ind,1)*M(ind,2)^M(ind,3);
In either case, we will have for the array here:
Let the spreadsheet thinking go.