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"

 采纳的回答

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']);

更多回答(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 个评论

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.

请先登录,再进行评论。

类别

帮助中心File Exchange 中查找有关 Variables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by