Spectrum Analysis with Discrete Fourier Transform
A few things:

When you have the start, endpoint and the number of steps you want in a vector then linspace is better than colon:

t = linspace(tBeg, tEnd, measurement_rate);


It's cleaner, since you don't have to calculate the length of each step.



exp( -2 .* pi .* j  .*(point_index - 1) .* (freq_index - 1) / total_freqs );


j looks like a variable, especially since you use i as a variable later on. The recommended way to denote the imaginary unit is 1i or 1j. That way it can't be confused with a variable, and you don't risk overwriting it.

You don't need .* when multiplying by scalars. It's only needed between matrices or vectors. If you only use it between matrices then it's easy to see which variables are vectors/matrices, and which are just scalars. It's now hard to tell if point_index, freq_index and/or total_freqs are scalars or matrices. 

There's only one vector in that statement (point_index), so no dots are needed.

The for loop can be vectorized, which is the MATLAB way to do something like that. I don't have MATLAB at hand, so I can't do it for you, unfortunately. If you have a version newer than R2015B, then you can do implicit matrix expansion by adding two vectors of different orientation:

[1; 2; 3] + [4, 5, 6] = [5, 6, 7;6, 7, 8;7, 8, 9]


You can do this with point_index and freq_index, then do matrix multiplication to get the final ft.



Don't use error as a variable name. It's a useful function that you can use to, well, throw errors. 



You don't need a space after \n in a string, unless you actually want a space in front of the first letter in the next line:

f = %.2f [Hz] \nA = %.2f [V]'





Your variable names are very good
Your coding style is good
I don't like clear and close all in the beginning of the script, but that's up to you.