MATLAB Answers

Help with cell if statement

76 ビュー (過去 30 日間)
Charles verhoog
Charles verhoog 2016 年 1 月 25 日
編集済み: Guillaume 2016 年 1 月 25 日
Trying to make this code work
if Gas_driven(n) == {'Air'}
R = 286.9;
elseif Gas_driven(n) == 'Argon'
R = 208;
else
'Gas Constant not defined'
end
but it keeps coming up with this error
Undefined function or variable 'Air'.
Error in ExpansionShots (line 40)
if Gas_driven(n) == {Air}
  1 件のコメント
Stephen
Stephen 2016 年 1 月 25 日
The error message indicates that you are actually calling this ( Air is a variable/function):
if Gas_driven(n) == {Air}
but your code shows that you think that you are calling this ( 'Air' is a string):
if Gas_driven(n) == {'Air'}
Also note that == does not check if two strings are the same: you need to use strcmp or strcmpi, exactly as per Ilham Hardy's answer.

サインインしてコメントする。

回答 (1 件)

Ilham Hardy
Ilham Hardy 2016 年 1 月 25 日
Perhaps something like this?
if strcmpi(Gas_driven{n},'Air') == 1
R = 286.9;
elseif strcmpi(Gas_driven{n},'Argon') == 1
R = 208;
else
R = 'Gas Constant not defined';
end

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by