Help with cell if statement

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 日

2 投票

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

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

質問済み:

2016 年 1 月 25 日

編集済み:

2016 年 1 月 25 日

Community Treasure Hunt

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

Start Hunting!

Translated by