Create a two variables function, including several law in MATLAB

1 vue (au cours des 30 derniers jours)
la
la le 18 Juin 2015
Commenté : la le 19 Août 2015
Dear Mathworks team
Hello
Please guide me. I searched in the FAQ and the Internet, but could not find answer for my question.
I want to create a two variables function, including several law in MATLAB. Then, I want to import code into C#.(I need the output of this function for C#)
How can I create this function
Thank you in advance for your attention and answer

Réponse acceptée

B.k Sumedha
B.k Sumedha le 18 Juin 2015
  5 commentaires
Stephen23
Stephen23 le 19 Juin 2015
Modifié(e) : Stephen23 le 19 Juin 2015
@la: there are multiple issue with the code that could be improved, and these would make the bug-fixing easier too:
  • do not place close all and clc at the start of every function and script. Although beginners love doing this it is sloppy programming: this function has nothing to do with figures, so why close them inside it? Functionally unrelated and thus a poor design decision.
  • remove unnecessary parentheses, as these only clutter the text and make it hard to read.
  • learn about operator precedence to help remove unnecessary parentheses.
  • do not repeat logical comparisons unnecessarily: perform them once!
  • do not use chains of mutually-exclusive if statements when you can simply use elseif statements.
  • learn to read the documentation. This will help you to discover that relational operators in MATLAB are binary operators, so the syntax A<x<B is not permitted, only A<x & x<B, exactly as Walter Roberson clearly explained in his answer too.
After all of that you might end up with a function like this (attached):
la
la le 19 Août 2015
Stephen Cobeldick
thanks

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 19 Juin 2015
21<x2<=27 is parsed as
((21<x2)<=27)
In the first step, 21<x2 returns a logical value, 0 or 1. In the second step, that 0 or 1 is compared <= 27. 0 and 1 are always <= 27 so the overall test would always be true.
If you want to test whether a value is in a range, write it as two tests:
21<x2 & x2 <= 27

Catégories

En savoir plus sur Startup and Shutdown 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