how to run operation row by row. Ex row(n) divide row(n+1)
4 ビュー (過去 30 日間)
古いコメントを表示
clc
clear
syms f(x)
f(x) = exp(-((x).^2));
a =0; % lower limit
b = 1; %upper limit
for j=1:6
n = 2.^j;
h = (b-a)/n;
kamir = vpa(int(f,x,a,b));
s = 0.5*(f(a)+f(b));
for i=1:n-1
s = s+f(a+i*h);
end
I =vpa(h*s);
fprintf(' \t %6d \t %f.4 \n ',n,I)
end
Above is my code. after run, we will get 2 column...
for the second column...what I want to do is...I want to compute row(n)/row(n+1)
Hopefully dear all professor/Dr/expert can help me with this problem..thank you in advance
0 件のコメント
採用された回答
DUY Nguyen
2023 年 3 月 2 日
Hi, in this modified code, I added a prev_I variable to store the previous value of I. After computing I, we compute the ratio as I / prev_I and print it in the third column!
clear
syms f(x)
prev_I=1;
f(x) = exp(-((x).^2));
a =0; % lower limit
b = 1; %upper limit
fprintf('n\t\tIntegral\tRatio\n');
for j= 1:6
n = 2.^j;
h = (b-a)/n;
kamir = vpa(int(f,x,a,b));
s = 0.5*(f(a)+f(b));
for i=1:n-1
s = s+f(a+i*h);
end
I =vpa(h*s);
if i==1
ratio =1;
else
ratio = I / prev_I;
end
fprintf('%d\t\t%.4f\t\t%.4f\n', n, I, ratio)
prev_I = I;
end
3 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Numbers and Precision についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!