How do I input a variable that contains a previous variable?

The input for my function requires a letter "d" after a variable that I calculate, as shown below. I can't get it to work because I don't know the syntax for the code.
function [S0,S1,S2,S3] = calcStokes(n)
full_name = fullfile('I0R', n);
full_name2 = full_named;
I0value = I0(full_name2,full_name);
disp(I0value)
Above is the code that requires 2 inputs, one with the a name "n" and one with a name "nd"

 Accepted Answer

full_name = fullfile('I0R', sprintf('%d', n));
full_name2 = [full_name 'd'];
But considering your other postings I suggest you are probably looking for something more like
base = sprintf('%d',n);
full_name = fullfile('IOR', [base '.bmp']);
full_name2 = fullfile('IOR', [base 'd.bmp']);

More Answers (1)

Define nd as peristent variable. Look at this example
function y=myfcn(n)
persistent nd
if isempty(nd)
nd=0
end
y=2*n+nd
nd=n

3 Comments

I'm sorry, I didn't explain myself properly. I want to be able to input 0 as n, and load in two files from the folder: 0 and 0d. This means that 0d is an actual file name.

Sign in to comment.

Categories

Community Treasure Hunt

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

Start Hunting!