Matlab函数返回值
我有一个程序,有函数和问题,返回值,它有太多的输出 例如:y=出现答案的文本Matlab函数返回值,matlab,return-value,Matlab,Return Value,我有一个程序,有函数和问题,返回值,它有太多的输出 例如:y=出现答案的文本 Error in text (line 2) if nargin == 0 Output argument "array" (and maybe others) not assigned during call to " C:\Users\name\Documents\MATLAB\text.m>text". 程序text.m读取一个包含两个名称和数字的txt文件,如 例如: 约翰·道格拉斯15986 菲
Error in text (line 2)
if nargin == 0
Output argument "array" (and maybe others) not assigned during call to "
C:\Users\name\Documents\MATLAB\text.m>text".
程序text.m读取一个包含两个名称和数字的txt文件,如
例如:
约翰·道格拉斯15986
菲利普杜赫357852
等等。程序将它们转换为15986道格拉斯·约翰等
function array = text(~)
if nargin == 0
dirr = '.';
end
answer = dir(dirr);
k=1;
while k <= length(answer)
if answer(k).isdir
answer(k)=[];
else
filename{k}=answer(k).name;
k=k+1;
end
end
chose=menu( 'choose file',filename);
namn = char(filename(chose));
fid = fopen(namn, 'r');
R = textscan(fid,'%s %s %s');
x=-1;
k=0;
while x <= 24
x = k + 1;
All = [R{3}{x},' ',R{1}{x},' ',R{2}{x}];
disp(All)
k = k + 1;
end
fclose(fid);
函数数组=文本(~)
如果nargin==0
dirr='';
结束
答案=dir(dirr);
k=1;
虽然k在定义中指定函数输出参数,但在函数体中不为其赋值
例如,在
function y = student(j)
您的输出是y
。因此,您必须为y
分配一些内容
阅读有关MATLAB的更多信息。这里是一个工作示例
第一部分是在文件名“function.m”中创建一个名为“function”的函数。然后将以下代码放入其中:
function result = functionA(N,alpha)
result = 5;
return
end
第二部分是创建另一个Matlab文件(即,由您命名),或者您甚至可以使用Matlab命令窗口。然后运行以下代码:
getresult = functionA(100,10);
getresult
运行后,您会得到以下答案:
ans =
5
谢谢,我知道该放在哪里,但无法理解文本。m,它有许多输出。您可以使用[x,y,z]=functionname(…)
从函数返回多个输出。或者,您可以将所有输出组合到一个单元格数组或结构中。阅读文档,它已经解释清楚了。不要调用函数text
,因为有一个内置的MATLAB函数使用这个名称。很抱歉,我找不到我正在寻找的结果,可能我只是想靠近看看,或者我是瞎子。但是我读了文档,得到了一些结果,但不是我想要的。例如:y=25 y=数字名称1,2,3,4,5等等y=数字名称1 y=数字名称2等等。对不起,我不明白你需要什么。请详细解释你期望的结果。新问题更好,因为你已经接受了这个问题。你可以通过链接来参考这个问题。