matlab软件求解舍入误差与有效数
舍入误差与有效数
东南大学机械工程学院
设SN= N。 j=1j2 1,其精确值为2(2 N N+1)
(1) 编制按从大到小的顺序SN=2 1+3 14 1……+N 1SN通用的程序;
(2) 编制按从小到大的顺序SN=N 1(N 1) 1+(N 2) 1+……+2 1SN通用的程序;
(3) 按两种顺序分别计算S102,S104,S106,并指出有效位数(编制程序时用单精度);
(4) 通过本上机题你明白了什么。 解:(1)从大到小的matlab程序:
function s=myfun1(N) format long; k=2;
s=single(0); for k=2:1:N a=1/(k*k-1); s=a+s; end end
1
1
1
1
1
1
1
1
1
1
3
1
1
(2)从小到大的matlab程序
function s=myfun2(N) format long; s=single(0); for i=N:-1:2 a=1/(i*i-1); s=a+s; end end
(3)