How can I correctly use consecutive numbers in a iteration?
    6 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hi there!
I have this formula : Ek = mk + e*sin(ek). I know 'mk' and I know 'e'.
To find out the value of Ek I have to use iteration, that's what my teacher told me.
He said :
#1 ek = mk that means e1 = mk + e*sin(ek)
#2 e2 = mk + e*sin(e1)
#3 e3 = mk +e*sin(e2)
It must stop when ei+1-ei>tolerance (tolerance = 10^-12).
That,s what I did but it is not working :(.
ia=10^-11;    
tol=10^-12;  
ek=mk;
while ia>tol
    ei+1-ei>tol;
    e1=mk+e*sin(mk);
    e2=mk+e*sin(e1);
    ei+1=mk+e*sin(ei);      %The expression to the left of the equals sign is not a valid target for an assignment
That's the error I get at the end.
Thanking you!
0 件のコメント
採用された回答
  CARLOS RIASCOS
      
 2018 年 4 月 4 日
        Hello friend, I did this for you, I hope it helps you.
Note: Change the values of the variables mk and e to the values that you say already have.
    clear all
    mk=0.01;
    e=0.5;
     i=1;
     ek(i) = mk;
     tol=10e-12;
     ia = 10e-11;
     while abs(ia) > tol
         ek(i+1) = mk + e*sin(ek(i));
         ia= ek(i+1) - ek(i);
         i=i+1;
     end
    disp('End value of ek:')
    disp(ek(end))
その他の回答 (0 件)
参考
カテゴリ
				Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

