我得到了安全系数及其相应力量的数据,我想让它像提示并询问“什么是安全系数?”然后用户将输入安全系数的值,我想输出在数据表中显示相应的力
这是任何帮助。答案 0 :(得分:1)
我认为你只想索引价值。 Matlab索引从1开始,因此您需要将其用作参考,或者添加一个。正确的是将所需的索引放在括号中,如此
output_value=A(y+1);
答案 1 :(得分:1)
由于您要在第一列中搜索值并从第二列打印相应的值,您可以执行以下操作:
ri = find(A(:,1) == y);
z = A(ri,2);
这假设您始终会在y
的第一列中找到A
的相应值。如果不是这种情况,则需要修改代码:
ri = find(A(:,1) == y);
if isempty(ri) % value not found
% code to print error message
% or
% code interpolate between given values
else
z = A(ri,2);
end
您也可以使用try-catch
块代替if-else
语句。
插值可能有点技巧,因为您需要正确建模。插值比推断更容易。
假设您在第一列中的值按升序或递减顺序排列,您可以使用interp1
,如下所示,进行一阶插值,
z = interp1(A(:,1),A(:,2),y);