If statements comparing two character strings with multiple inputs
显示 更早的评论
I have to use two strings that include different characters such as str1= ["rho" , "mu" , "nu"] and str2= ["SI", "BG"] and go from there. I need to use IF statements to get the correct values if i called the function from the command line: h20_props(50,"nu","SI) but when I do this, nothing happens. I don't even get an error. it's just nothing. Here's what I have:
function h20_props(T, str1, str2)
str1 = ["rho","mu","nu","pv"];
str2 = ["SI", "BG"];
if strcmpi(str1,"mu")
if strcmpi(str2, "SI")
dv = h20_mu_SI(T);
fprintf('dv_si = %g\n',dv);
else
dv = h20_mu_BG(T);
fprintf('dv_bg = %g\n',dv);
end
elseif strcmpi(str1,"nu")
if strcmpi(str2,"SI")
kv = h20_nu_SI(T);
fprintf('kv_si=%g\n',kv);
else
kv = h20_nu_BG(T);
fprintf('kv_bg=%g\n',kv);
end
elseif strcmpi(str1, "pv")
if strcmpi(str2, "SI")
vp = h20_pv_SI(T);
fprintf('vp_si=%g\n',vp);
else
vp = h20_pv_BG(T);
fprintf('vp_bg=%g\n',pv);
end
end
end
1 个评论
per isakson
2021-2-16
You overwrite the input arguments with the statements
str1 = ["rho","mu","nu","pv"];
str2 = ["SI", "BG"];
Comment out these two statements.
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Characters and Strings 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!