版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
-1-《離散數(shù)學(xué)》實(shí)驗(yàn)報(bào)告學(xué)院軟件學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)指導(dǎo)教師劉冰學(xué)號11999008姓名曹春亭提交日期2012-12-9實(shí)驗(yàn)一連結(jié)詞邏輯運(yùn)算一.實(shí)驗(yàn)?zāi)康膶?shí)現(xiàn)二元合取、析取、蘊(yùn)涵和等價(jià)表達(dá)式的計(jì)算。熟悉連接詞邏輯運(yùn)算規(guī)則,利用程序語言實(shí)現(xiàn)邏輯這幾種邏輯運(yùn)算。二.實(shí)驗(yàn)內(nèi)容從鍵盤輸入兩個(gè)命題變元P和Q的真值,求它們的合取、析取、蘊(yùn)涵和等價(jià)四種運(yùn)算的的真值。要求對輸入內(nèi)容進(jìn)行分析,如果不符合0、1條件需要重新輸入,程序有良好的輸入輸出界面。三.實(shí)驗(yàn)過程1.算法分析:程序采用java語言,以‘/\’表示合取,以‘\/’表示析取,以‘->’表示蘊(yùn)含,以‘‘表示等價(jià),用多重選擇判斷句分別實(shí)現(xiàn)功能。2.程序代碼: importstaticjava.lang.System.*;importjava.util.*;publicclassLogicOperation{ publicstaticvoidmain(Stringargs[]) { Scannerin=newScanner(System.in); booleanstate=true; while(state) { Operatione=newOperation(); e.dataInput(); e.logicJudge(); out.println("是否繼續(xù)進(jìn)行運(yùn)算?(y(Y)/n(N))"); Strings=in.nextLine(); if(s.charAt(0)=='n'||s.charAt(0)=='N') state=false; } }}classOperation{ Scannerin=newScanner(System.in); privatebooleanstate=true; privatebooleanm; privatebooleann; Operation() { } publicvoiddataInput() { out.println("歡迎使用邏輯運(yùn)算程序"); out.println("請輸入你要進(jìn)行邏輯運(yùn)算的兩個(gè)值(0或1),以回車確認(rèn)。"); intp,q; out.print("p="); p=in.nextInt(); out.print("q="); q=in.nextInt(); while(state) { if((p==0||p==1)&&(q==0||q==1)) { state=false; if(p==1) m=true; else m=false; if(q==1) n=true; else n=false; } else { out.println("您輸入的數(shù)據(jù)不合法,請從新輸入:"); out.print("p="); p=in.nextInt(); out.print("q="); q=in.nextInt(); } } } publicvoidlogicJudge() { if(m==n)//計(jì)算合取表達(dá)式 { if(m==true) out.println("合取:p/\\q=1"); else out.println("合?。簆/\\q=0"); } else out.println("合取:p/\\q=0"); if(m==true||n==true)//計(jì)算析取表達(dá)式 out.println("析?。簆\\/q=1"); else out.println("析取:p\\/q=0"); if(m==true&&n==false)//計(jì)算蘊(yùn)含表達(dá)式 out.println("蘊(yùn)含:p-》q=0"); else out.println("蘊(yùn)含:p-》q=1"); if(m==n) out.println("恒等:p《-》q=1"); else out.println("恒等:p《-》q=0"); }}3.實(shí)驗(yàn)數(shù)據(jù)及結(jié)果分析;
實(shí)驗(yàn)二關(guān)系的閉包運(yùn)算一、實(shí)驗(yàn)?zāi)康氖煜りP(guān)系的閉包運(yùn)算,編程實(shí)現(xiàn)關(guān)系閉包運(yùn)算算法。一、實(shí)驗(yàn)內(nèi)容利用矩陣求解有限集上給定關(guān)系的自反、對稱和傳遞閉包。三.實(shí)驗(yàn)過程程序采用java語言,以二維數(shù)組表示矩陣。1.算法分析: 在三種閉包中自反和對稱閉包的求解很容易,對矩陣表示的關(guān)系,其自反閉包只要將矩陣的主對角線全部置為1就可;對稱閉包則加上關(guān)系的轉(zhuǎn)置矩陣(邏輯加法);傳遞閉包則有兩種算法(二選一即可):算法1:直接根據(jù)計(jì)算,過程略。算法2:Warshall算法(1962)設(shè)R的關(guān)系矩陣為M(1)令矩陣A=M(2)置i=1(3)對所有的j,若A[j,i]=1,則對于k=1,2,…,n,令A(yù)[j,k]=A[j,k]+A[i,k]注:此處為邏輯加,可以使用運(yùn)算符||(4)i=i+l.(5)若i≤n,則轉(zhuǎn)到(3),否則結(jié)束.流程圖2.程序代碼: importstaticjava.lang.System.*;importjava.util.*;publicclassClosureOperation{ publicstaticvoidmain(Stringargs[]) { Scannerin=newScanner(System.in); Closuree=newClosure(); intz; out.println("請輸入你想計(jì)算的閉包:1為自反閉包,2為對稱閉包,3為傳遞閉包。"); out.print("z="); z=in.nextInt(); do { switch(z) { case1:e.reflexiveClosure();out.println("謝謝使用!");z=0;break; case2:e.symmetryClosure();out.println("謝謝使用!");z=0;break; case3:e.deliverClosure();out.println("謝謝使用!");z=0;break; default:out.println("您輸入的數(shù)據(jù)有誤,請輸入你想計(jì)算的閉包:1為自反閉包,2為對稱閉包,3為傳遞閉包。");out.print("z=");z=in.nextInt();if(z==0)z=-1; } }while(z!=0); }}classClosure{ Scannerin=newScanner(System.in); privateint[][]matrix; privateintdimension; Closure() { out.println("歡迎使用關(guān)系閉包運(yùn)算"); out.println("請輸入矩陣的維數(shù)(最大不超過10)"); dimension=in.nextInt(); matrix=newint[dimension][dimension]; out.println("請輸入您的關(guān)系矩陣,標(biāo)準(zhǔn)輸入格式:"); out.println("1111"+"\n"+"0000"+"\n"+"1111"+"\n"+"0000"); for(inti=0;i<dimension;i++) { out.print("請輸入第"+(i+1)+"行的元素:"); for(intj=0;j<dimension;j++) matrix[i][j]=in.nextInt(); } } publicvoidreflexiveClosure() { inti=0,j=0; int[][]a=newint[dimension][dimension]; for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) a[i][j]=matrix[i][j]; for(i=0,j=0;i<dimension;i++,j++) a[i][j]=1; out.println("所得的自反閉包關(guān)系矩陣:"); output(a); } publicvoidsymmetryClosure() { inti=0,j=0; int[][]a=newint[dimension][dimension]; for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) a[i][j]=matrix[i][j]; int[][]b=newint[dimension][dimension]; for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) b[j][i]=a[i][j]; for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) { a[i][j]+=b[i][j]; if(a[i][j]==2) a[i][j]=1; } out.println("所得的對稱閉包關(guān)系矩陣:"); output(a); } publicvoiddeliverClosure() { inti=0,j=0,p=0; int[][]a=newint[dimension][dimension]; int[][]b=newint[dimension][dimension]; int[][]ends=newint[dimension][dimension]; for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) a[i][j]=b[i][j]=ends[i][j]=matrix[i][j]; intsum=0; for(intm=0;m<dimension-1;m++) { for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) { sum=0; for(p=0;p<dimension;p++) sum+=a[i][p]*matrix[p][j]; if(sum!=0) b[i][j]=1; else b[i][j]=0; } for(intx=0;x<dimension;x++) for(inty=0;y<dimension;y++) { a[x][y]=b[x][y]; } for(i=0;i<dimension;i++) for(j=0;j<dimension;j++) { ends[i][j]+=b[i][j]; if(ends
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度柴油交易平臺建設(shè)與運(yùn)營合同樣本4篇
- 2025年度旅游度假區(qū)場地租賃及旅游服務(wù)合同11篇
- 2024年高端住宅小區(qū)二零二四年度飲用水品質(zhì)提升合同3篇
- 個(gè)性化珠寶訂制及保養(yǎng)服務(wù)合同書
- 2024藥店藥品銷售經(jīng)理聘用合同范本3篇
- 2025年度酒店餐飲場地租賃轉(zhuǎn)讓意向協(xié)議范本4篇
- 專業(yè)家務(wù)助理合作協(xié)議(2024規(guī)范版)
- 2025年智慧城市建設(shè)項(xiàng)目土地租賃合同樣本8篇
- 2025年度違法建筑拆除與歷史文化遺產(chǎn)保護(hù)合同4篇
- 2025年茶山茶葉加工廠租賃合作協(xié)議范本4篇
- 臨床醫(yī)學(xué)院畢業(yè)實(shí)習(xí)管理-new-new課件
- 阻燃材料的阻燃機(jī)理建模
- PLC控制系統(tǒng)合同(2024版)
- CJT 511-2017 鑄鐵檢查井蓋
- ISO15189培訓(xùn)測試卷及答案
- JJG(交通) 171-2021 超聲式成孔質(zhì)量檢測儀檢定規(guī)程
- 氣象衛(wèi)星技術(shù)在軍事中的應(yīng)用
- 配電工作組配電網(wǎng)集中型饋線自動(dòng)化技術(shù)規(guī)范編制說明
- 介入科圍手術(shù)期護(hù)理
- 化驗(yàn)員個(gè)人自查自糾報(bào)告
- 食品良好操作規(guī)范(GMP)和食品衛(wèi)生標(biāo)準(zhǔn)操作程序(SSOP)課件
評論
0/150
提交評論