版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
離散數(shù)學(xué)實(shí)驗(yàn)C++關(guān)系的運(yùn)算(冪運(yùn)算,閉包運(yùn)算)離散數(shù)學(xué)實(shí)驗(yàn)C++關(guān)系的運(yùn)算(冪運(yùn)算,閉包運(yùn)算)離散數(shù)學(xué)實(shí)驗(yàn)C++關(guān)系的運(yùn)算(冪運(yùn)算,閉包運(yùn)算)資料僅供參考文件編號(hào):2022年4月離散數(shù)學(xué)實(shí)驗(yàn)C++關(guān)系的運(yùn)算(冪運(yùn)算,閉包運(yùn)算)版本號(hào):A修改號(hào):1頁次:1.0審核:批準(zhǔn):發(fā)布日期:實(shí)驗(yàn)2關(guān)系的運(yùn)算關(guān)系的冪運(yùn)算輸入:集合A,二元關(guān)系集合R,冪次n輸出:R的n次冪要求:盡量使運(yùn)算的計(jì)算量最小關(guān)系閉包的計(jì)算輸入:集合A,二元關(guān)系集合R輸出:R的傳遞閉包t(R)要求:采用Warshall算法(89頁)編寫代碼判斷輸出t(R)為傳遞閉包程序代碼:#include<iostream>#include<sstream>#include<vector>usingnamespacestd;typedefvector<vector<int>>Mat;classRelation{ vector<int>s;//集合 MatA;//關(guān)系矩陣 MatB; MatC; MatE; MatD[100];//用來存儲(chǔ)矩陣 intn;public: voidinputs();//將集合存入向量中 voidinputa();//將讀入的關(guān)系轉(zhuǎn)化為關(guān)系矩陣 voidprint();//輸出關(guān)系矩陣 voidmi(); intWarshall();};//定義類intn,m;//全局變量,下文中使用voidRelation::inputs(){ cout<<"輸入集合"; for(inta;cin>>a;){ (a);if(getchar()=='\n')break;}}//將集合存入向量中voidRelation::inputa(){//將讀入的關(guān)系轉(zhuǎn)化為關(guān)系矩陣 cout<<"輸入關(guān)系"; inti,j,e,r; for(i=0;i<();i++){ vector<int>u; for(j=0;j<();j++){ intia=0; (ia);} (u); (u); (u); (u); }//創(chuàng)建二維向量,初始化,是每個(gè)元素為0 for(inth,z;cin>>h>>z;){if(h==0&&z==0) break; for(i=0;i<();i++){ if(s[i]==h)e=i; if(s[i]==z)r=i; } A[e][r]=1;B[e][r]=1; E[e][r]=1;//C[e][r]=1;//讀入關(guān)系,將關(guān)系對(duì)應(yīng)的矩陣中的位置元素變?yōu)? if(getchar()=='\n')break; }}voidRelation::print(){ for(inti=0;i<();i++){ for(intj=0;j<();j++) cout<<A[i][j]<<""; cout<<endl; }}//輸出關(guān)系矩陣voidRelation::mi(){ inta,b,i,c; cin>>n;//讀入冪次 if(n==0){//0次冪 for(intk=0;k<();++k){ for(intj=0;j<();++j){ if(k==j) cout<<"1";//對(duì)角線上元素為1 else cout<<"0"; } cout<<endl; } } else{ for(i=1;i<n;++i){ for(inth=0;h<();++h){ for(intd=0;d<();++d){ intm=0; for(intx=0;x<();++x){ m=m+B[h][x]*A[x][d];//第h行第d列的元素對(duì)應(yīng)相乘的和 } C[h][d]=m; } } if(i>1){ for(a=0;a<();++a){ for(b=0;b<();++b){ if(C[a][b]!=D[0][a][b]) break; } if(b!=())break; } }//檢驗(yàn)是否重復(fù) if(a==()&&b==()){ break;//重復(fù)則跳出不再冪乘 } for(intk=0;k<();k++){ for(intj=0;j<();j++){ B[k][j]=C[k][j]; } D[i-1]=B; c=i; } } if(a==()&&b==()){ intq; q=(n-i)%c;//找出結(jié)果位置 if(q==0)q=c; for(inte=0;e<();e++){ for(intf=0;f<();f++){ cout<<D[q-1][e][f]<<"";//輸出 } cout<<endl; } return; }else{//1次冪 for(inth=0;h<();h++){ for(intn=0;n<();n++){ cout<<B[h][n]<<""; } cout<<endl; } } }}intRelation::Warshall(){ for(inti=0;i<();++i){ for(intj=0;j<();++j){ if(A[j][i]==1){ for(intk=0;k<();++k){ A[j][k]=A[j][k]+A[i][k]; if(A[j][k]!=0&&A[j][k]!=1) A[j][k]=1; } } } } print(); inta=1;intb=1;// for(intp=0;p<();++p){ for(intl=0;l<();++l){ if(A[p][l]==0){ for(intx=0;x<();++x){ if(A[p][x]*A[x][l]==1) a=0; } } } } if(a==0){cout<<"wrong!"<<endl;} else{ for(intp=0;p<();++p){ for(intl=0;l<();++l){ if(A[p][l]==1&&E[p][l]==0){ A[p][l]=0; //再判斷傳遞性 for(intp=0;p<();++p){ for(intl=0;l<();++l){ if(A[p][l]==0){ for(intx=0;x<();++x){ if(A[p][x]*A[x][l]==1) b=0; } } } } if(b==1){ cout<<"wrong!"<<endl; return0;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)五年級(jí)小數(shù)乘除法計(jì)算題匯編
- 科創(chuàng)板開通知識(shí)測(cè)試參考答案
- 語文試卷 天津市濱海新區(qū)五所重點(diǎn)中學(xué)高三畢業(yè)班聯(lián)考語文試卷
- 保險(xiǎn)行業(yè)助理的工作總結(jié)和技能要求
- 骨骼疾病護(hù)理工作總結(jié)
- 家具家居行業(yè)技術(shù)嘗試改造
- 生物醫(yī)藥行業(yè)技術(shù)工作總結(jié)
- 紙制品行業(yè)業(yè)務(wù)員工作總結(jié)
- 游戲界面設(shè)計(jì)師的交互體驗(yàn)和游戲設(shè)計(jì)
- 《機(jī)械防煙方式》課件
- 考研的重要性和必要性
- 掘進(jìn)機(jī)維修培訓(xùn)課件
- 導(dǎo)醫(yī)接待工作的溝通技巧與話術(shù)培訓(xùn)
- 觸電與應(yīng)急知識(shí)培訓(xùn)總結(jié)
- 分布式光伏高處作業(yè)專項(xiàng)施工方案
- 江蘇省南京市建鄴區(qū)2023-2024學(xué)年五年級(jí)上學(xué)期期末數(shù)學(xué)試卷.1
- 運(yùn)動(dòng)損傷的急救處理和康復(fù)
- 白內(nèi)障手術(shù)術(shù)后護(hù)理和飲食禁忌
- 設(shè)立生態(tài)農(nóng)業(yè)科技研發(fā)公司組建方案
- 云南省昆明市西山區(qū)2023-2024學(xué)年三年級(jí)上學(xué)期期末語文試卷
- 辦公樓消防安全培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論