亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 高斯-若當法矩陣求逆與矩陣行列式.cpp

?? 該源代碼用高斯-若當法矩陣求逆與矩陣行列式
?? CPP
字號:
#include <iostream>
#include <cmath>
#define n 5
int main()
{
    float A[n][n]; 
    float E[n][n];
	float N[n][n];
	float H[n][n];
	int   i,j,a; //變量a用來記錄交換行的次數用于計算行列式時的正負
	a = 0;
    float HANGLIESHI(float S[n][n],float N[n][n],int b);
    int QIUNIJUZHEN(float T[n][n],float R[n][n]);
	std::cout<< "********************************************" << std::endl <<std::endl;
	std::cout<< "班級:   ********一      班********" << std::endl;
	std::cout<< "姓名:   ********劉      軍********" << std::endl;
	std::cout<< "學號:   ********2008201092********" << std::endl;
	std::cout<< "課題:   ***矩陣求逆和矩陣行列式***" << std::endl << std::endl;
	std::cout<< "********************************************" << std::endl << std::endl;
    std::cout<< "注:奇異矩陣沒有逆矩陣只對其求行列式的值和列主元!" << std::endl << std::endl;
    std::cout<< "   非奇異矩陣對其求行列式的值和列主元以及逆矩陣!" << std::endl << std::endl;
    std::cout<< "********************************************" << std::endl << std::endl;
	std::cout<< "初始化矩陣A顯示界面有限最好不要超過四階:" << std::endl << std::endl;//初始化矩陣A
	std::cout << " ";
	for(i=0;i<n;i++)
	{
		for(j=0;j<n;j++)
		{
			std::cin >> A[i][j];
			N[i][j] = A[i][j];
		}
		   
	}
		   
   	 std::cout<< std::endl << std::endl;	
     std::cout << "矩陣A為:" << std::endl << std::endl;
	 for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		 {
			 std::cout << " " << A[i][j] << "    ";
			 if(j>=n-1) 
				 std::cout << std::endl << std::endl;
		 }
	 }
	 std::cout << "初始化單位矩陣E為:" << std::endl << std::endl;

     for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		{
			if(i==j)
                E[i][j]=1.0;
			else
				E[i][j]=0.;
		   
		}
	 }
     
	 for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		 {
			 std::cout << " " << E[i][j] << "    ";
			 if(j>=n-1) std::cout << std::endl << std::endl;
		 }
	 }
	 
	 std::cout << "對矩陣A選列主元求得列主元矩陣為:" << std::endl << std::endl;
	 for(j=0; j<n; j++)//最外層循環列不變
	 {
		 for(i=j; i<n-1; i++)       //i+1不可以超過n-1
		 {
			 float k;
			 if(fabs(A[j][j]) < fabs(A[i+1][j]))//將第j列的絕對值最大的賦給A[j][j]
			 {
				 a++;             //記錄行交換的次數
				 k=A[i+1][j];
				 A[i+1][j]=A[j][j];
				 A[j][j]=k;
				 for(int m=j+1; m<n; m++)
				 {
					 k=A[j][m];
					 A[j][m]=A[i+1][m];
					 A[i+1][m]=k;
					 
				 }
                 if(j>=1)                          //此時應交換J列之前的各個對應元素,該語句不應放在上一個FOR循環中!!!!!!
					 {
						 for(int t=j-1; t>=0; t--)
						 {
							 k=A[j][t];
							 A[j][t]=A[i+1][t];
							 A[i+1][t]=k;
						 }
					 }
				 for(int g=0; g<n; g++)             //單位矩陣對應列主元矩陣的行變換
				 {
					 k=E[j][g];
					 E[j][g]=E[i+1][g];
					 E[i+1][g]=k;
				 }
			 }
		 }
	 }
  
	 for(i=0;i<n;i++)//輸出列主元矩陣A
	 {
		 for(j=0;j<n;j++)
		 {
			 H[i][j] = A[i][j];       //矩陣H存放列主元矩陣A的副本用來作為參數傳遞給求逆矩陣函數
			 std::cout << " " << A[i][j] << "    ";
			 if(j>=n-1) 
				 std::cout << std::endl << std::endl;
		 }
	 }
                                                  
	 std::cout << "輸出列主元矩陣A與做相應變換后的單位矩陣E(A | E)為:" << std::endl << std::endl;
     for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		 {
			 std::cout << " " << A[i][j] << "    ";
			 if(j>=n-1)
			 {
				 std::cout << '|' << "    ";
				 
					 for(int k=0; k<n; k++)
					 {
			             std::cout << " " << E[i][k] << "    ";
			             if(k>=n-1) std::cout << std::endl << std::endl;
					 }
				 
			 }
				 
		 }
	 }
	float ppp;
    ppp=HANGLIESHI(A,N,a); //調用函數求矩陣的行列式的值
	if(ppp == 0)
	{
		std::cout<< std::endl;
		std::cout << "矩陣A為奇異矩陣沒有逆矩陣!!!" << std::endl << std::endl;
		return 0;
	}
	else                                              
	{
		std::cout<< std::endl;
		std::cout << "用高斯-若當方法進行消元之后輸出單位矩陣E和矩陣A的逆矩陣為:" << std::endl << std::endl;
        QIUNIJUZHEN(H,E);  
	}
	return 0;
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

float HANGLIESHI(float S[n][n],float N[n][n],int b)
{
	int i, j; 
    float	x;
	x = 1;
	for(i=0; i<b; i++)
	{
		x = (-1)*x;
	}
	std::cout << "原矩陣A為:" << std::endl << std::endl;
    for(i=0; i<n; i++)
		for(j=0; j<n; j++)
		{
			std::cout << " " << N[i][j] << "   ";
			if(j==n-1)
				std::cout<< std::endl;
		}
     
	for(i=0; i<n; i++)
		for(int t=i+1; t<n; t++)
			if(S[t][i]!=0)
			{
				if(S[i][i]!=0)
				{
					float y = S[t][i]/S[i][i];
			    	for(j=i; j<n; j++)
					{
				    	S[t][j] = S[t][j] - S[i][j]*y;
					}

				}
		    	else
				{
				    if(S[i][i]==0)
					{
						std::cout<< std::endl;
						std::cout << "矩陣A的行列式的值為:"  << std::endl << std::endl;
					    std::cout << " " << S[i][i] << std::endl;
					    return S[i][i];
					}
				}
			}
		std::cout<< std::endl;
        std::cout << "矩陣A的行列式的值為:" << std::endl << std::endl;
        float m=1;
		for(i=0; i<n; i++)
		{
			m = m*S[i][i];
		}
		if((-0.01 < m && m < 0) || (m >0 && m < 0.01) )
		{
			m = 0;
		}
		else
		{
			m = x*m;
		}	
		std::cout << " " << m << std::endl;
		return m;    
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

int QIUNIJUZHEN(float T[n][n],float R[n][n])
{
	int i, j;
    for(i=0; i<n;i++)            //主對角線上的元素做分母為外層循環
	 {
		 float q = T[i][i];     //備份A[i][i]
         for(j=i; j<n; j++)
		 {
			 T[i][j] = T[i][j]/q;//將矩陣A第i行的各個元素提出1/A[i][i]后A[i][i]元素化為1
		 }
		 for(j=0; j<n; j++)
		 {
			 R[i][j] = R[i][j]/q;//將矩陣E第i行的各個元素相應的提出1/A[i][i]做相應的變換
		 }
		 if(i < n-1)             //將矩陣A化為單位矩陣矩陣E相應的變換為矩陣A的逆矩陣
		 {
			 for(int t=i+1; t<n; t++)
			 {
				 if(T[t][i]!=0)
				 {
					 float b = T[t][i];
					 
					 for(j=i; j<n; j++)
					 {
						 T[t][j] = T[t][j]-b*T[i][j];
					 }
				     for(int m=0; m<n;m++)            
					 {
						 R[t][m] = R[t][m]-R[i][m]*b;
						      
					 }
				 }
					 
			 }
		 }
		 if(i >= 1)
		 {
			 for(int t=i-1; t>=0; t--)
			 {
				 
				 if(T[t][i]!=0)
				 {
					 float b = T[t][i];
					 
					 for(j=i; j<n; j++)
					 { 
					    T[t][j] = T[t][j]-T[i][j]*b;
					 }
					 for(int m=0; m<n;m++)
					 {
						 R[t][m] = R[t][m]-R[i][m]*b;
					 }
				}
						                
			 }
		 }
	  }
     for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		 {
			std::cout << " " << T[i][j] <<  "     ";
		    if(j>=n-1)
			 {
				 std::cout << '|' << "     ";
				 
					 for(int k=0; k<n; k++)
					 {
						 if(0 < R[i][k] && R[i][k] < 0.001 || 0 > R[i][k] && R[i][k] > -0.001)  //誤差范圍在0---0.001之間
						 {
							 R[i][k] = 0;
							 std::cout << " " << R[i][k] << "      ";
						 }
						 else
			                 std::cout << " " << R[i][k] << "      ";
			             if(k>=n-1) std::cout << std::endl << std::endl;
					 }
			}
		}
	 }
     std::cout << "輸出矩陣A的逆矩陣為:" << std::endl << std::endl;
     for(i=0;i<n;i++)
	 {
		 for(j=0;j<n;j++)
		 {
			 std::cout << " " << R[i][j] << "        ";
			 if(j>=n-1) std::cout << std::endl << std::endl;
		 }
	 }
	 return 0;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区黄| 欧美日韩国产综合一区二区三区 | 精品久久人人做人人爱| 中文字幕免费不卡在线| 天使萌一区二区三区免费观看| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美一级日韩不卡播放免费| 中文字幕精品一区| 麻豆中文一区二区| 欧美性猛交xxxx乱大交退制版| 国产色91在线| 国产一区二区按摩在线观看| 制服丝袜中文字幕一区| 亚洲最色的网站| a美女胸又www黄视频久久| 久久久三级国产网站| 秋霞午夜av一区二区三区| 欧洲一区二区三区在线| 亚洲精品国产成人久久av盗摄| 国产91清纯白嫩初高中在线观看| 欧美一级黄色录像| 肉色丝袜一区二区| 日本道免费精品一区二区三区| 中文字幕成人av| 国产99久久久久| 国产日韩欧美在线一区| 国产a精品视频| 国产精品久久久久一区二区三区| 国产激情偷乱视频一区二区三区| 欧美成人伊人久久综合网| 九九在线精品视频| 久久综合九色综合97婷婷女人 | 久久精品视频免费观看| 国产麻豆精品95视频| 国产欧美日韩精品a在线观看| 韩国视频一区二区| 久久久99免费| 粉嫩一区二区三区在线看| 中文字幕久久午夜不卡| 99精品久久99久久久久| 亚洲人成小说网站色在线 | eeuss国产一区二区三区| 国产精品不卡在线观看| 91免费国产在线| 亚洲国产精品一区二区尤物区| 欧美网站大全在线观看| 免费一区二区视频| 国产亚洲欧美日韩日本| 99re视频这里只有精品| 亚洲午夜久久久| 欧美精品一区二区三区在线播放| 成人在线视频一区| 亚洲精品视频一区二区| 欧美久久免费观看| 国内精品免费在线观看| 亚洲天堂久久久久久久| 欧美精品亚洲二区| 国产69精品久久久久777| 亚洲人123区| 日韩情涩欧美日韩视频| 成人午夜av影视| 日韩在线一区二区| 亚洲国产精品成人久久综合一区| 色婷婷亚洲精品| 久久99蜜桃精品| 亚洲精品日产精品乱码不卡| 日韩欧美中文字幕精品| 高清beeg欧美| 日韩av一级电影| ...av二区三区久久精品| 日韩写真欧美这视频| 成人av免费在线| 伦理电影国产精品| 亚洲伦理在线免费看| 欧美精品一区二区三区蜜臀| 在线观看91视频| 国产激情视频一区二区三区欧美| 亚洲福中文字幕伊人影院| 欧美激情在线观看视频免费| 91精品国产欧美一区二区18 | 欧美人妖巨大在线| 成人激情黄色小说| 蜜臀va亚洲va欧美va天堂| 亚洲精品视频观看| 国产精品久久久久天堂| 久久久青草青青国产亚洲免观| 欧美三级电影在线看| 91亚洲精华国产精华精华液| 国产综合久久久久影院| 免费成人av资源网| 亚洲国产精品久久人人爱蜜臀| 亚洲欧洲国产专区| 久久久99精品免费观看| 精品奇米国产一区二区三区| 制服丝袜日韩国产| 精品视频1区2区| 欧美专区亚洲专区| 色爱区综合激月婷婷| 成人黄色网址在线观看| 丁香六月综合激情| 国产精品一区二区久激情瑜伽 | 美女视频黄频大全不卡视频在线播放| 亚洲色欲色欲www| 欧美国产日韩精品免费观看| 久久欧美中文字幕| 日韩免费电影网站| 精品成人在线观看| 精品久久久久久亚洲综合网| 5566中文字幕一区二区电影| 欧美日韩不卡视频| 91精品国产综合久久久蜜臀粉嫩| 欧美综合欧美视频| 欧美高清视频www夜色资源网| 欧美三级中文字幕| 91精品在线麻豆| 日韩视频一区在线观看| 日韩精品专区在线影院观看| 精品入口麻豆88视频| 欧美精品一区二区精品网| 久久久久综合网| 日本一区二区三区高清不卡| 中文在线免费一区三区高中清不卡| 国产亚洲一区二区三区| 国产精品久久久久久户外露出| 成人欧美一区二区三区视频网页| 国产精品高潮久久久久无| 亚洲色欲色欲www在线观看| 亚洲激情在线播放| 亚洲亚洲精品在线观看| 日本不卡123| 国产福利一区在线观看| av不卡一区二区三区| 欧美日韩中文国产| 欧美成人一级视频| 一区视频在线播放| 亚洲线精品一区二区三区| 蜜桃91丨九色丨蝌蚪91桃色| 国产精品77777| 色猫猫国产区一区二在线视频| 欧美日本视频在线| 国产喷白浆一区二区三区| 亚洲在线成人精品| 九色综合国产一区二区三区| 99精品欧美一区二区三区小说| 欧美日产国产精品| 久久久91精品国产一区二区精品 | 色哟哟精品一区| 欧美一区二区免费视频| 中文字幕+乱码+中文字幕一区| 亚洲精品中文字幕乱码三区| 裸体在线国模精品偷拍| 91在线播放网址| 日韩一二三四区| 亚洲另类一区二区| 国产酒店精品激情| 538在线一区二区精品国产| 久久麻豆一区二区| 午夜一区二区三区视频| 国产成人福利片| 欧美一级一级性生活免费录像| 国产精品美女www爽爽爽| 午夜电影网亚洲视频| 99久久er热在这里只有精品15 | 欧美一区二区三区啪啪| 中文字幕一区二区三区四区 | 日韩国产欧美在线播放| 成人午夜激情视频| 欧美成人一区二区三区| 亚洲成av人影院| 97久久精品人人爽人人爽蜜臀| 精品欧美一区二区三区精品久久 | 国产69精品久久久久777| 欧美电影在哪看比较好| 亚洲男人的天堂在线观看| 国产69精品一区二区亚洲孕妇| 日韩欧美一二三四区| 亚洲综合色成人| 91浏览器打开| 成人免费在线播放视频| 国产mv日韩mv欧美| 国产三级精品在线| 国产一区二三区好的| 欧美va亚洲va在线观看蝴蝶网| 天天av天天翘天天综合网| 在线一区二区三区四区五区| 中文字幕综合网| 91亚洲精华国产精华精华液| 国产精品乱码人人做人人爱| 懂色av中文字幕一区二区三区| 精品国产91久久久久久久妲己| 日本午夜一本久久久综合| 欧美午夜精品久久久久久超碰| 亚洲一二三专区| 欧美影视一区在线| 亚洲激情图片一区| 色综合久久六月婷婷中文字幕| 日韩理论片一区二区| 91丨porny丨国产入口| 亚洲视频每日更新| 一本在线高清不卡dvd|