班級:09醫軟一班
製作人:方遠(主選單及列印及除錯)
方艷豔(矩陣u的計算及輸出)
方天白(演算法的編寫)
胡婷娟(矩陣l的計算及輸出)
韓建(x、y值的計算及輸出、整體函式的構造、說明書的編寫)
一實驗名稱
doolitle解方程的c++實現
二實驗目的
理解各種方法的基本思想及公式的推導過程
用c語言實現方程組地求解。
三實驗原理
若矩陣a為n階方陣,則可將矩陣a分解為a=lu其中l是下三角矩陣,u是對角元素為1的上三角矩陣即單位上三角矩陣
源程式**:
#include<>
#include<>
#include<>
#include<>
全域性變數定義區
const int number = 20; //方程最大個數
float a[number][number], b[number], copy_a[number][number], copy_b[number]; //係數行列式
int a_y[number]; //a中隨著橫座標增加列座標的排列順序,如a[0][0],a[1][2],a[2][1]...則a_y=;
int lenth, copy_lenth; //方程的個數
char *x; //未知量a,b,c的載體
函式宣告區
void input輸入方程組
void print_menu列印主選單
void doolittle();
//主函式
void main()
//函式定義區
void print_menu()
cout << "\n---解線性方程組 09醫藥軟體開發(1)班學號:09713016 指導老師:金力老師--- ";
cout << "\n\ndoolittle分解法方程解答的方案n"; }
void input()
x = new char[lenth];
for(i = 0; i < lenth; i++)
x[i] = 'a' + i;
//輸入方程矩陣
//提示如何輸入
cout < cout << "請在每個方程裡輸入" << lenth << "係數和乙個常數:\n";
cout << "例:\n方程:a";
for(i = 1; i < lenth; i++)
cout << "=10\n";
cout << "應輸入:";
for(i = 0; i < lenth; i++)
cout << i + 1 << " ";
cout << "10\n";
cout < //輸入每個方程
for(i = 0; i < lenth; i++)
//備份資料
for(i = 0; i < lenth; i++)
for(j = 0; j < lenth; j++)
copy_a[i][j] = a[i][j];
for(i = 0; i < lenth; i++)
copy_b[i] = b[i];
copy_lenth = lenth;
}void doolittle() //doolittle消去法計算方程組
for(i=1;i
for(i=1;i
for(j=i+1;j
}for(i=1;i
for(i=0;i
for(i=0;i
cout<<"l=\n";
for(i=0;i
cout<<"\n\n";
for(j=0;j
cout<<"u=\n";
for(i=0;i
cout<<"\n";
y[0]=b[0];
for(i=1;i
cout<<"y"< }
cout<<"\n";
x[lenth-1]=y[lenth-1]/u[lenth-1][lenth-1];
for(i=lenth-2;i>=0;i--)
x[i]=x[i]/u[i][i];
}for(i=0;i
}lu分解在本質上是高斯消元法的一種表達形式。實質上是將a通過初等行變換變成乙個上三角矩陣,其變換矩陣就是乙個單位下三角矩陣。這正是所謂的杜爾里特演算法(doolittle algorithm):
從下至上地對矩陣a做初等行變換,將對角線左下方的元素變成零,然後再證明這些行變換的效果等同於左乘一系列單位下三角矩陣,這一系列單位下三角矩陣的乘積的逆就是l矩陣,它也是乙個單位下三角矩陣。
這類演算法的複雜度一般在左右,對充分消元的分解則不然。
杜爾里特演算法
對給定的n × n矩陣
a = (an,n)
有a(0): = a
然後定義對於n = 1,...,n-1的情況如下:
在第n步,消去矩陣a(n-1)的第n列主對角線下的元素:將a(n-1)的第n行乘以之後加到第i行上去。其中。
於是,定義為:設
a(n): = lna(n 1).
迭代法求解方程問題實驗報告
姓名 殷伯旭班級 信計0801班學號 u200810065 一 實驗目的 運用數學知識與matlab相結合,運用數學方法,建立數學模型,用matlab軟體輔助求解模型,解決實際問題。二 實驗任務 求方程的乙個近似解,誤差不超過,要求 設計4種求解的迭代法,討論其收斂性,並求出滿足精度的近似解 三 實...
解方程練習
一 解下列方程。2x 1.5x 75 2.13 0.8 2x 4.9 15.6 4x 1.56 10 15 x 12 32 7x 5x 20 6.14 5 6x 11.2 x 0.18 6.3 3x 4 6.5 7.6 二 列出方程,並求出方程的解。1 4個x與32.7的和是48.1,求x.2 乙個...
加減消元法解方程組案例
用加減法解二元一次方程組 第二課時 一 背景分析 本課是滬科版七年級數學第三章消元的第二課時加減法。在此之前,學生已學習了用代入消元法解二元一次方程組和簡單的加減消元法。對消元的解題思想已有了一定的了解。本課的加減法的學習,繼續深入 二元 化 一元 的新方法。根據本課教學內容的特點,本課教學將達到的...