改进平方根法求解方程组(C语言)
2018-02-10 10:37
387 查看
编写用改进平方根法解方程组 的程序,并解下列方程组:
#include<stdio.h> main() { float x[6],y[8]; int i; float a[6][7]={0.5,-0.5,0,0,0,0,-1, -0.5,1.5,-0.5,-0.25,0.25,0,0, 0,-0.5,1.5,0.25,-0.25,0,0, 0,-0.25,0.25,1.5,-0.5,0,0, 0,0.25,-0.25,-0.5,1.5,-0.5,0, 0,0,0,0,-0.5,0.5,0}; float b[8][9]={1.35,0.35,2.00,2.00,-0.35,-0.35,-1.00,2.00,2.00, 0.35,1.35,2.00,-1.00,-0.35,-0.35,2.00,2.00,2.00, 2.00,2.00,1.35,-0.35,1.00,2.00,-0.35,0.35,12.00, 2.00,-1.00,-0.35,1.35,2.00,2.00,0.35,-0.35,12.00, -0.35,-0.35,1.00,2.00,1.35,0.35,2.00,2.00,2.00, -0.35,-0.35,2.00,2.00,0.35,1.35,2.00,-1.00,2.00, -1.00,2.00,-0.35,0.35,2.00,2.00,1.35,-0.35,2.00, 2.00,2.00,0.35,-0.35,2.00,-1.00,-0.35,1.35,2.00}; void ping(float*,int,float[]); ping(a[0],6,x); ping(b[0],8,y); for(i=0;i<=5;i++)printf("x[%d]=%f\n",i,x[i]); printf("\n"); for(i=0;i<=7;i++)printf("y[%d]=%f\n",i,y[i]); } //改进平方根法 void ping(float*u,int n,float x[]) { int i,r,k; for(r=0;r<=n-1;r++) { for(i=r;i<=n;i++) for(k=0;k<=r-1;k++) *(u+r*(n+1)+i)-=*(u+r*(n+1)+k)*(*(u+k*(n+1)+i)); for(i=r+1;i<=n-1;i++) { *(u+i*(n+1)+r)=*(u+r*(n+1)+i)/(*(u+r*(n+1)+r)); } } for(i=n-1;i>=0;i--) { for(r=n-1;r>=i+1;r--) *(u+i*(n+1)+n)-=*(u+i*(n+1)+r)*x[r]; x[i]=*(u+i*(n+1)+n)/(*(u+i*(n+1)+i)); } }
相关文章推荐
- 列主元消去法求解方程组(C语言)
- LU分解法求解方程组(C语言)
- 三对角阵的LU分解和三对角方程组的求解(C语言)
- 追赶法求解方程组(C语言)
- 列选主元Guass消元法求解方程组+c语言
- 雅克比迭代法与高斯塞德尔迭代法求解方程组(C语言)
- Guass列主元、平方根法、追赶法求解方程组的C++实现
- Guass列主元、平方根法、追赶法求解方程组的C++实现
- java实现N元一次方程组求解
- C语言 -- 数学问题求解
- 牛顿迭代法求解多元高阶方程组
- 【C语言】求解素数(质数)的N种境界
- C语言实现CRC算法实例改进
- C语言简单编程之一元二次方程求解
- 算法 c语言 冒泡排序改进
- 对于C语言面向对象封装性的改进尝试——基于一个简易计算器的代码
- C语言实现迷宫求解问题(附源代码)
- 第十二周—C语言 递归求解(求两个数的最大公约数)
- C语言及程序设计进阶例程-28 动态规划法问题求解
- hdoj 1573 X问题 【CRT】【求解方程组在 N内正整数解的个数】