if loop for whole vector

2 ビュー (過去 30 日間)
Cside
Cside 2020 年 10 月 6 日
コメント済み: Ameer Hamza 2020 年 10 月 6 日
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

採用された回答

Ameer Hamza
Ameer Hamza 2020 年 10 月 6 日
編集済み: Ameer Hamza 2020 年 10 月 6 日
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 件のコメント
Cside
Cside 2020 年 10 月 6 日
Great! this was amazing thank you :)
Ameer Hamza
Ameer Hamza 2020 年 10 月 6 日
I am glad to be of help! :)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by