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 comentario

Stephen23
Stephen23 el 25 de En. de 2016
Editada: Stephen23 el 25 de En. de 2016
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.

Iniciar sesión para comentar.

Respuestas (1)

Ilham Hardy
Ilham Hardy el 25 de En. de 2016

2 votos

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

Categorías

Más información sobre Characters and Strings en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 25 de En. de 2016

Editada:

el 25 de En. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by