How to write a code which can decrease the range of the answer until we get the right value?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I want to write a code which can help me decrease the range of answer until i find it.For example,S=0:0.001:1;and i have to find a value which its square will be the 0.09,that is,x^2=0.09,and the answer is 0.3
Now,if every time i guess median,that is ,
First time i guess "0.5",but 0.5^2=0.25 ,not 0.09,so the range become S=0:0.001:0.5
Second time i guess "0.25",but 0.25^2=0.0625 ,not 0.09.so the range become S=0.25:0.001:0.5
Third time i guess (0.25+0.5)/2=0.375,but 0.375^2=0.140625 ,not 0.09,so the range become S=0.25:0.001:0.375
So the range will keep decreasing until i find the answer,and one of upper bound and lower bound of the range will be my wrong number which i just guess.but i don't know how to modify the code
My original code
%first time
S=0:0.001:1;
x=0.5;
y=x^2;%not 0.09
%Second time
S=0:0.001:x
q=0.25;
y=q^2;%not 0.09
%Third time
S=q:0.001:x
w=0.375;
y=w^2%not 0.09
%Fourth time
S=q:0.001:w %S=0.25:0.001:0.375
e=0.3125;
y=e^2 %not 0.09
%Fifth time
S=e:0.001:w;
r=0.34;
y=r^2 %not 0.09
.
.
.
until i found that y=0.09,so i can know the answer,however,this code is too long,i want to write a while or for loop to find the answer,does anyone know how to modify my code?
1 Kommentar
darova
am 6 Okt. 2019
Maybe you can find some more information if you will search for bisection method
Antworten (0)
Siehe auch
Kategorien
Mehr zu Digital Input and Output 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!