社区讨论
高斯约旦消元被卡精度怎么办
学术版参与者 3已保存回复 5
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 5 条
- 当前快照
- 1 份
- 快照标识符
- @lo330f18
- 此快照首次捕获于
- 2023/10/23 23:57 2 年前
- 此快照最后确认于
- 2023/10/23 23:57 2 年前
各种eps都试过了,long double也不行。
CPPvoid guass(ll n)
{
ll heng = 1;
for(int i = 1 ; i <= n ; i++)
{
ll mx = heng;
for(int j = heng + 1 ; j <= n ; j++)if(fabs(a[j][i]) - fabs(a[mx][i]) > eps)mx = j;
if(fabs(a[mx][i]) < eps)continue;
for(int j = 1 ; j <= n + 1 ; j++)swap(a[heng][j],a[mx][j]);
for(int j = 1 ; j <= n ; j++)
{
if(heng == j)continue;
db t = a[j][i] / a[heng][i];
for(int k = 1 ; k <= n + 1 ; k++)a[j][k] -= a[heng][k] * t;
}
heng++;
}
}
回复
共 5 条回复,欢迎继续交流。
正在加载回复...