Help with cell if statement

9 ビュー (過去 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 件のコメント
Stephen23
Stephen23 2016 年 1 月 25 日
編集済み: Stephen23 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

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by