有窮自動機與正規(guī)文法轉(zhuǎn)換編譯原理源代碼_第1頁
有窮自動機與正規(guī)文法轉(zhuǎn)換編譯原理源代碼_第2頁
有窮自動機與正規(guī)文法轉(zhuǎn)換編譯原理源代碼_第3頁
有窮自動機與正規(guī)文法轉(zhuǎn)換編譯原理源代碼_第4頁
有窮自動機與正規(guī)文法轉(zhuǎn)換編譯原理源代碼_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上#include<iostream>using namespace std;int main()int n, m;/n為自動機狀態(tài)的總數(shù)目/m為自動機終結(jié)符的數(shù)目int n_midd_stat, n_final_stat;/n_midd_stat為中間狀態(tài)的數(shù)目/n_final_stat為終態(tài)的數(shù)目cout << "請輸入自動機共有的狀態(tài)數(shù)目:"cin >> n;char* stat = new charn;cout << "請輸入開始狀態(tài):"cin >> stat0;

2、cout << "請輸入中間狀態(tài)的個數(shù):"cin >> n_midd_stat;cout << "請輸入分別中間狀態(tài):" << endl;for(int i1 = 0; i1 < n_midd_stat; i1+)cin >> stati1 + 1;n_final_stat = n - n_midd_stat - 1;cout << "最后分別輸入終態(tài):" << endl;for(int i2 = 0; i2 < n_final_stat;

3、 i2+)cin >> statn_midd_stat + 1 + i2;cout << "請輸入終結(jié)符的數(shù)目:"cin >> m;char* terminal = new charm;cout << "請分別輸入終結(jié)符:" << endl;for(int i3 = 0; i3 < m; i3+)cin >> terminali3;cout << endl;/構(gòu)造自動機int i, j,k;char* f = new char*n;for(k=0;k<n;k+

4、)fk=new charn;cout << "構(gòu)造自動機:" << endl;for(i = 0; i < n; i+)for(j = 0; j < n; j+)cout << "狀態(tài)" << stati << "能否直接推出狀態(tài)"<< statj;if(i = 0) && (j = 0)cout << "? (若能則輸入相應(yīng)的終結(jié)符,否則輸入"0")"elsecout <<

5、; "?"cin >> fij;cout << endl;/轉(zhuǎn)換成對應(yīng)的文法cout << "由此自動機轉(zhuǎn)換成的對應(yīng)的文法為:" << endl;cout << "G=("/<< stat0;for(int i4 = 0; i4 < n; i4+)if(i4 != 0)cout << ","cout << stati4;cout << ","cout << "&

6、quot;for(int i5 = 0; i5 < m; i5+)if(i5 != 0)cout << ","cout <<terminali5;cout << ","cout << "P,"cout << stat0 << "),"cout << "其中P為:" << endl;for(i = 0; i < n; i+)for(j = 0; j < n; j+)if(fij != '0')cout << stati << "->" << fij << statj <<endl;/輸出可接受狀態(tài)增加的產(chǎn)生式,例如A->for(int i6 = 0; i6 < n_final_stat

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論