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 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by