# why this loop is not working? Actually p_j value is not changing why?

1 view (last 30 days)
RAJKUMAR SAHA on 5 Mar 2023
Edited: VBBV on 8 Mar 2023
n = input('please enter number of strips :');
for i = 1:n
for j = i
p_i = 0
p_j = p_i + D/(2*n)
epsilon_ci = (epsilon_max/xu)*(xu-p_j)
sigma_ci = 0.45*fc*[2*(epsilon_ci/0.002)-(epsilon_ci/0.002)^2]
p_i == p_j;
end
end
##### 2 CommentsShow 1 older commentHide 1 older comment
Walter Roberson on 5 Mar 2023
p_i == p_j;
That is not an assignment statement

Pritesh Shah on 5 Mar 2023

VBBV on 8 Mar 2023
Edited: VBBV on 8 Mar 2023
n = 10;% e.g. input number
epsilon_ci = 0.001;
epsilon_max = 0.01;
xu = 2;
fc = 100;
D = 1.1;
p_i = 0; %outside for loop
for i = 1:n
p_j(i) = p_i + D/(2*n);
epsilon_ci = (epsilon_max/xu)*(xu-p_j(i));
sigma_ci = 0.45*fc*(2*(epsilon_ci/0.002)-(epsilon_ci/0.002)^2);
p_i = p_j(i); % assign new p_i
end
p_j
p_j = 1×10
0.0550 0.1100 0.1650 0.2200 0.2750 0.3300 0.3850 0.4400 0.4950 0.5500
VBBV on 8 Mar 2023
You require only one for loop, since the inner for loop will lead to only one iteration,