MATLAB: Does it appear “Error: Function definitions are not permitted in this context” when I run the following function file


I have two files for running:
The first one is a script I named preambulo.m which runs ok. The second one is a function which I named final_project_mc.m, when I run this file, it appears the error that I mentioned in the initial question, and I don't know why this is happening. In order to do this exercise you need to run first preambulo.m and then final_project_mc. M.
I would really appreciate any help with this problem.

Best Answer

  • As the error says, you can't directly execute an m-file which defines a function; you Call the function from a script or another function.
    To call the function you would simply incorporate the line
    at the end of the script which would return the output array at the command line as the default variable ans or assign it to a variable as
    end_result = final_project_mc(b);
    doc function % for more details
    and section on programming for how scripts and functions work in the "Getting Started" section.