我正在学习MATLAB,并尝试编写以下代码。 编写一个名为“ buildrandomstrings”的函数,该函数将接收输入整数n。现在,如果n为+ ve:它将创建并返回一个单元格数组,该数组具有从1到n的长度递增的随机字符字符串。每个字符串都由前一个随机字符串加上一个额外的随机字符组成。
现在我的代码-
function buildrandomstrings = buildrandomstrings(inchar, posint)
% Creates a cell array with strings of increasing
% lengths, from 1:n, starting with inchar
% Format of call: buildstr(input char, n)
% Returns cell array with n strings
buildrandomstrings= cell(1, posint);
inchar = char(inchar-1);
strin = '';
for i = 1:posint
strin = strcat(strin, char(inchar+i));
buildrandomstrings{i} = strin;
end
end
但是我收到以下错误,这对我来说是没有意义的。即使我到处都看过。
buildrandomstrings(4)
输入参数不足。
buildrandomstrings错误(第7行)
buildrandomstrings = cell(1,posint);
按Ctrl键并单击时,我得到以下信息。
使用长度从1:n开始递增的字符串创建一个单元格数组, 以inchar开头调用格式:buildstr(input char,n)
返回具有n个字符串的单元格数组
答案 0 :(得分:1)
我猜您正在运行buildrandomstrings(4)
。但是,您需要提供函数function buildrandomstrings = buildrandomstrings(inchar, posint)
定义的两个参数。
尝试:
buildrandomstrings('a', 4)
输出:
ans =
1×4 cell array
{'a'} {'ab'} {'abc'} {'abcd'}