MATLAB Answers

FOR LOOP , beginner question.

2 views (last 30 days)
Hamada Alkhlif
Hamada Alkhlif on 15 Apr 2021
Edited: Jan on 15 Apr 2021
i want to Write a code or script including a FOR LOOP in order to computing the value of d for the following values of x and returning an output variable named ANSWER just as shown : x = 0.10, x = 0.15, and x = 0.20
  3 Comments
DGM
DGM on 15 Apr 2021
Try
fprintf("\t%8.4f\t%8.4f\n",[x;d])
using %g strips insignificant trailing zeros

Sign in to comment.

Accepted Answer

Daniel Pollard
Daniel Pollard on 15 Apr 2021
Edited: Daniel Pollard on 15 Apr 2021
Your code is
d = [];
for x=[0.1000,0.1500,0.2000]
d=[d ((34.63/x)-5.126)/2.54];
disp ("ANSWER");
end
x=[0.1000 0.1500 0.2000];
fprintf("\t%4g\t\t%4g\n",[x;d])
If I understand right, you want
d = [];
x=[0.1000,0.1500,0.2000];
for xi = 1:numel(x)
d=[d ((34.63/x(xi))-5.126)/2.54];
disp ("ANSWER");
fprintf("\t%5.4f\t\t%.4f\n", [x(xi);d(xi)])
end
  7 Comments
Hamada Alkhlif
Hamada Alkhlif on 15 Apr 2021
thanks everybody

Sign in to comment.

More Answers (1)

Jan
Jan on 15 Apr 2021
Edited: Jan on 15 Apr 2021
disp ("ANSWER");
for x = [0.10, 0.15, 0.20]
d = ((34.63 / x) - 5.126) / 2.54;
fprintf("%12g%12g\n", x, d)
end
Or:
x = [0.10, 0.15, 0.20]
d = ((34.63 ./ x) - 5.126) / 2.54; % .7 for elementwise division
fprintf('Answer:\n');
fprintf("%12g%12g\n", [x, d].')
  1 Comment
Hamada Alkhlif
Hamada Alkhlif on 15 Apr 2021
1st code gives :
>> Untitled3
ANSWER
0.1 134.32
0.15 88.8743
0.2 66.1512
>> the answer here does not have 4 decimals for x' and not alighed vertically , same for d'
2nd code gives :
>> Untitled3
x =
0.1000 0.1500 0.2000
Answer:
0.1 0.15
0.2 134.32
88.8743 66.1512
>>

Sign in to comment.

Tags

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!