matlab计算中输出精度问题!急!clear; A=[4.7 24.5 24.1 10.6 12.9 0.7 0 9.5 0 3.3 23.1 5.3 0 24.0 25.6 0.4 14.5 0 18.1 2.7 27.5 23.5 19.7 18.5 17.4 13.2 11.3 9.8 11.0 0.9];for i=1:1:30y=(1)/(1+exp(-((-13.758)+64.721*A(i))));fprintf('=%f\n',y);e

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 23:55:45

matlab计算中输出精度问题!急!clear; A=[4.7 24.5 24.1 10.6 12.9 0.7 0 9.5 0 3.3 23.1 5.3 0 24.0 25.6 0.4 14.5 0 18.1 2.7 27.5 23.5 19.7 18.5 17.4 13.2 11.3 9.8 11.0 0.9];for i=1:1:30y=(1)/(1+exp(-((-13.758)+64.721*A(i))));fprintf('=%f\n',y);e
matlab计算中输出精度问题!急!
clear;
A=[4.7 24.5 24.1 10.6 12.9 0.7 0 9.5 0 3.3 23.1 5.3 0 24.0 25.6 0.4 14.5 0 18.1 2.7 27.5 23.5 19.7 18.5 17.4 13.2 11.3 9.8 11.0 0.9];
for i=1:1:30
y=(1)/(1+exp(-((-13.758)+64.721*A(i))));
fprintf('=%f\n',y);
end
输出的结果不是1.000000就是0.000000,这是什么问题呢?

matlab计算中输出精度问题!急!clear; A=[4.7 24.5 24.1 10.6 12.9 0.7 0 9.5 0 3.3 23.1 5.3 0 24.0 25.6 0.4 14.5 0 18.1 2.7 27.5 23.5 19.7 18.5 17.4 13.2 11.3 9.8 11.0 0.9];for i=1:1:30y=(1)/(1+exp(-((-13.758)+64.721*A(i))));fprintf('=%f\n',y);e
你的问题与精度没关系,因为你的算子中存在指数衰减因子,但参变量大于某个程度时,已经衰减到稳定程度,你也将结果夸大了,还没衰减到足够深度时,如0.99995等其它一些结果还是有的.运行vpa(pi,80)看看就知道精度是没问题的,小数位数由digits决定