if loop for whole vector

2 Ansichten (letzte 30 Tage)
Cside
Cside am 6 Okt. 2020
Kommentiert: Ameer Hamza am 6 Okt. 2020
HI, I have this code and the vector "hrs" is a 200 x 1 double. I cant seem to get the answer I want with this code. How may I debug this? Thank you so much!
If the vector "hrs" is <10, I want 24 to be added to it. if it is > 10, it can remain as it is
if hrs < 10
hrs = hrs + 24;
else
hrs = hrs;
end

Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 6 Okt. 2020
Bearbeitet: Ameer Hamza am 6 Okt. 2020
In MATLAB, you can directly use logical indexing instead of writing a if-block
idx = hrs < 10;
hrs(idx) = hrs(idx) + 24;
In case, you want to see what is wrong with your code, following show how to use if-block with for-loop
for i = 1:numel(hrs)
if hrs(i) < 10
hrs(i) = hrs(i) + 24
else
hrs(i) = hrs(i);
end
end
  2 Kommentare
Cside
Cside am 6 Okt. 2020
Great! this was amazing thank you :)
Ameer Hamza
Ameer Hamza am 6 Okt. 2020
I am glad to be of help! :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Simulink finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by