Info

이 질문은 마감되었습니다. 편집하거나 답변을 올리려면 질문을 다시 여십시오.

is it possible to input two variable values while loading a function from commend menu?

조회 수: 1 (최근 30일)
Young Lee
Young Lee 2018년 11월 7일
마감: MATLAB Answer Bot 2021년 8월 20일
function [] = w8ass7p4(y)
y = [n m]
%number of files
for i = 1:n
% variable for folder
a = ['binder',num2str(i)]
mkdir(a)
for j= 1:m
matrix = magic(j)
b = ['texfiles',num2str(j)]
c = [a,'\',b]
dlmwrite(c,matrix,'|')
end
end
Im writing a function so that It can loop and create n of folders and m of files
is it possible to load a function while inputting two variable, if so, how can I improve my code?? Thank you!!
  댓글 수: 1
Caglar
Caglar 2018년 11월 7일
Your code is illogical. Your input is y but then you are defining y. That would delete the input y. I think you want to do
[n m]=y
Also, you can do
function [] = w8ass7p4(n,m)
so that it accepts 2 input variables.

답변 (2개)

Stephen23
Stephen23 2018년 11월 7일
편집: Stephen23 2018년 11월 7일
You should use sprintf and fullfile:
D = 'directory where the folders should be located';
for ii = 1:n
B = sprintf('binder%d',ii);
mkdir(fullfile(D,B))
for jj = 1:m
matrix = magic(jj);
T = sprintf('file%d.txt',jj);
F = fullfile(D,B,T);
dlmwrite(F,matrix,'|')
end
end

madhan ravi
madhan ravi 2018년 11월 7일
편집: madhan ravi 2018년 11월 7일
[n m]=size(y) %change this
dlmwrite(c,matrix,'delimiter ','|') %change this
Put
w8ass7p4(y) %y should be a matrix
In command window

이 질문은 마감되었습니다.

Community Treasure Hunt

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

Start Hunting!

Translated by