error: Array indices must be positive integers or logic

2 visualizzazioni (ultimi 30 giorni)
please help

Risposte (2)

VBBV
VBBV il 2 Feb 2024
y(i) = y(i) + 1;
instead of
y(II) = y(II) + 1;
  2 Commenti
VBBV
VBBV il 2 Feb 2024
Modificato: VBBV il 2 Feb 2024
The value of II may be a floatpoint number. MATLAB uses integer and 1 based indexing for accessing array elements
Kayla Garcia
Kayla Garcia il 2 Feb 2024
thank you for the response. i have changed it and it is still giving me the same error message.

Accedi per commentare.


Walter Roberson
Walter Roberson il 2 Feb 2024
Due to floating point round-off, the result A+(B*x(i)) might not be exactly an integer. You should round() it.
  2 Commenti
Kayla Garcia
Kayla Garcia il 2 Feb 2024
when i try round() i recieve a different message
Walter Roberson
Walter Roberson il 2 Feb 2024
You have not posted enough context to really give you an answer.
But I suspect that you should have made x one element shorter. Something along the line of
x = linspace(xmin, xmax, number_of_steps+1);
x = x(1:end-1);

Accedi per commentare.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by