how to run operation row by row. Ex row(n) divide row(n+1)
조회 수: 2 (최근 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!