Solving multiple related variables using if statement

3 visualizzazioni (ultimi 30 giorni)
hi everyone
i have 3 variables (Temp, Voltage, Battery) that i want to correlate
what i want is that i get errors in temp variable using limits of all the three variables
limits are
when Temp<44 or Temp>56 with Volatge between 9.8 to 13.5 and battery 1 i should get errors of my variable Temp if it is <44 or if it is >56
battery limits are 1 or 0 (ON or OFF)
kindly help me
  6 Commenti
asad ali
asad ali il 27 Giu 2019
i am really sorry if i offend u
i dont have the code but i m going to attach my excel file n i need code for that with the limits that i told before
Bob Thompson
Bob Thompson il 27 Giu 2019
We aren't offended, just trying to explain that we can't help you if we don't know what you need help with.
'i need code for that with the limits that i told before'
This is very different than what you asked us before. How were you getting errors before if you didn't have any code?
I do not have the ability to access your excel file (its is a limitation on my end), nor do I have time to write a full code for you. The logic indexing that I wrote before is still the biggest part of the 'calculations' you're looking to do. The only other thing you would need to do first is read in your file, either with xlsread, or readtable.

Accedi per commentare.

Risposta accettata

Guillaume
Guillaume il 27 Giu 2019
Nobody was offended, we're just trying to understand what you want as a result, which you haven't clearly explained. As said, coding the test is trivial but we don't know what to do with the result. You still haven't told us what you want as an output. I want errors doesn't mean anything.
So I'm going to take a guess as to the desired output. If that's not what you want, then please explain.
In matlab, using if and loops should be a last resort. There are usually much simpler ways of obtaining the result you want, as is the case here:
batterytest = readtable('Test.xlsx'); %import the data in a table
batterytest.isError = batterytest.Temp < 44 | batterytest.Temp > 56 %create new table variable which is true when temperature outside [44, 56]
You can trivially add more conditions to the isError test. eg.
batterytest.isError = batterytest.Temp < 44 | batterytest.Temp > 56 | batterytest.Voltage < 9.8 | batterytest.Voltage > 13.5 | batterytest.Battery == 0

Più risposte (0)

Categorie

Scopri di più su Get Started with MATLAB in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by