I need one of my variables in function of time zero (0) but I get an error in MATLAB saying that I need a positive number. how can I fix that?
ex: t = 0:1:1000
if t = 0 I(t) = a + b else I(t) = b - a

 Akzeptierte Antwort

Mischa Kim
Mischa Kim am 25 Feb. 2014
Bearbeitet: Mischa Kim am 25 Feb. 2014

0 Stimmen

Maria, three things:
  • The relational operator for comparison is ==.
  • Indexing in MATLAB starts at 1, rather than 0, like in other programming languages. In other words, you cannot assign a value to t(0).
  • t is a vector, so you could do, e.g., as part of a loop:
...
if t(ii) == 0
I(t(ii) + 1) = a + b
else
I(t(ii) + 1) = b - a
end

2 Kommentare

Patrik Ek
Patrik Ek am 25 Feb. 2014
Or simpler
t = 1:1001;
I(t) = b-a;
I(t==0) = a+b;
Maria
Maria am 25 Feb. 2014
Thanks so much to both of you for the promt answer. I'll try that with my code. Maria Camila

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Mathematics finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 25 Feb. 2014

Kommentiert:

am 25 Feb. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by