Writing the text from a MATLAB Grader student solution to a variable

5 views (last 30 days)
I'm trying to write some more complex tests for a MATLAB Grader assignment that would involve analysing a student solution line-by-line and executing defined lines from the student's solution separately as one of the MATLAB Code tests in Grader. Is there any way to do this? For example some way to actually get the student's solution as a char vec or string.

Answers (1)

Soham Chakraborty
Soham Chakraborty on 22 Oct 2019
Hi,
You could first read the solution into a variable using "fileread" (Hint: if you are working with Script, the file is named "solution.m", when working with a Function problem, use the function name you specified). Then for example, you can use "regexp" to analyze the text. For example:
% Get reference solution for x.
xReference = referenceVariables.x;
% Compare with learner solution.
f= fileread('solution.m');
expr = '.*:.*';
matchIdx = regexp(f,expr);
length(matches)==1
  2 Comments
David Rayner
David Rayner on 16 Apr 2021
How is pass/fail determined: is it if the last line evaluates to true? or do you have to raise errors in the case of solutions that fail?
Cris LaPierre
Cris LaPierre on 16 Apr 2021
It is based on if an error is encountered in the assessment test or not.
See my answer here.

Sign in to comment.

Communities

More Answers in the  Distance Learning Community

Categories

Find more on Get Started with MATLAB in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!