
帮忙看一下matlab题目,我实在是看不懂感谢!
请确定函数的调用是否正确。如果它是错误的,指出错误所在。1)out=test1(6);functionres=test1(x,y)res=sqrt(x.^2+y.^2);...
请确定函数的调用是否正确。如果它是错误的,指出错误所在。
1)
out = test1(6);
function res = test1(x, y)
res = sqrt(x .^2 + y .^2);
2)
out = test2(12);
function res = test2(x, y)
error (nargchk(1,2,nargin));
if nargin == 2
res = sqrt(x .^2 + y .^2);
else
res = x;
end 展开
1)
out = test1(6);
function res = test1(x, y)
res = sqrt(x .^2 + y .^2);
2)
out = test2(12);
function res = test2(x, y)
error (nargchk(1,2,nargin));
if nargin == 2
res = sqrt(x .^2 + y .^2);
else
res = x;
end 展开
2个回答
展开全部
1)错了,分析如下:
function res = test1(x, y) %定义函数test1,要求有两个输入量
res = sqrt(x .^2 + y .^2);%函数体,test1的结果res为两个输入量平方和的开方。
所以,这个函数调用的时候应该使用两个参数。所以错
2)正确。
function res = test2(x, y)
error (nargchk(1,2,nargin));%这句功能是判断调用时使用的参数的个数是不是在1和2之间。 是同上面1)不一样的地方
if nargin == 2
res = sqrt(x .^2 + y .^2);
else
res = x;
end %是当调用时用两个参数时输出两个参数平方和的开方,否者输出参数的原值。
out = test2(12);%调用结果 out=12
function res = test1(x, y) %定义函数test1,要求有两个输入量
res = sqrt(x .^2 + y .^2);%函数体,test1的结果res为两个输入量平方和的开方。
所以,这个函数调用的时候应该使用两个参数。所以错
2)正确。
function res = test2(x, y)
error (nargchk(1,2,nargin));%这句功能是判断调用时使用的参数的个数是不是在1和2之间。 是同上面1)不一样的地方
if nargin == 2
res = sqrt(x .^2 + y .^2);
else
res = x;
end %是当调用时用两个参数时输出两个参数平方和的开方,否者输出参数的原值。
out = test2(12);%调用结果 out=12
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询