Probably a simple question but why non-integer value can't be used in for-loop.
for i=0:.1:1
H(i)=10*i ;
end
H
how do i use any non-integer value in for-loop?
Appriciate your help.

 Akzeptierte Antwort

Star Strider
Star Strider am 5 Okt. 2024

1 Stimme

One approach —
iv = 0:.1:1;
for i = 1:numel(iv)
H(i)=10*iv(i) ;
end
H
H = 1×11
0 1.0000 2.0000 3.0000 4.0000 5.0000 6.0000 7.0000 8.0000 9.0000 10.0000
<mw-icon class=""></mw-icon>
<mw-icon class=""></mw-icon>
.

Weitere Antworten (1)

Voss
Voss am 5 Okt. 2024

0 Stimmen

You can't use a number that's not a positive integer as an index, as in H(i) when i is 0 or 0.1, etc.. That's the problem.

vals = 0:0.1:1; % linspace(0,1,11) might be better
N = numel(vals);
H = zeros(1,N); % pre-allocate H
for i = 1:N
    H(i) = 10*vals(i);
end

If that's all the loop does, you don't need it:

vals = 0:0.1:1;
H = 10*vals;

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-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