Effacer les filtres
Effacer les filtres

two inputs and two equations

1 vue (au cours des 30 derniers jours)
Aleksandra Ksiezyk
Aleksandra Ksiezyk le 4 Fév 2020
hey !
is there a way to write a script/funtion/loop that understand i have two inputs (one is set and the second reminds "empty") and two equations with the same output, take the right equation and calculate my output ? eg
i have two possible inputs: Hp and Hkom
equations:
V = 12 + 3.2*Hp
or
V = 12 + 4*Hkom
i want matlab to understand that if i set one input Hp = 12 the second imput Hkom should be neclacted and take the write equation: V = 12 + 3.2*Hp
and calculate my V ??
  3 commentaires
Aleksandra Ksiezyk
Aleksandra Ksiezyk le 4 Fév 2020
no, i did not try because i want to avoid case or if. that is why i wrote here if anyone has some idea to solve it.
John D'Errico
John D'Errico le 4 Fév 2020
As I pointed out, you still really do need to use an if, in some form.

Connectez-vous pour commenter.

Réponse acceptée

John D'Errico
John D'Errico le 4 Fév 2020
This is easy enough to answer, as long as EXACTLY ONE of the two inputs was provided.
However, you need to consider what happens if BOTH or NEITHER of the values were provided. In those cases, your code would fail. It must fail, because an incomplete definition was given.
What code would I write to solve this? Simplest might be:
if numel([Hp,Hkom]) ~= 1
error('The sky is falling!')
else
V = [12 + 3.2*Hp,12 + 4*Hkom];
end
  1 commentaire
Aleksandra Ksiezyk
Aleksandra Ksiezyk le 5 Fév 2020
it does not work at all. :(
it i assign Hp = 6 and Hkom=2 it does not work and when i write only one variables .
Hp= 6;
Hkom=2;
if numel([Hp,Hkom]) ~= 1
error('The sky is falling!')
else
V = [12 + 3.2*Hp,12 + 4*Hkom];
end

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Get Started with MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by