實驗三 有限自動機的構造與識別

2022-06-04 19:45:11 字數 1662 閱讀 6917

一、實驗目標

1、掌握有窮狀態自動機的概念;  

2、掌握有窮狀態自動機的儲存及表示方法;

3、掌握有窮狀態自動機與正則式之間的關係。

二、實驗要求

1、輸入正規式; 

2、構造該正規式的有窮狀態自動機;

3. 以五元組形式輸出。

三、演算法

參見教材的轉換規則。

練習:²  (a|b)*abb

²  l(l|d)*

²  1(1010*|1(010)*1)*0

四、完成演算法設計、編碼和除錯工作,完成實驗報告。

#include#include

#include

intmain()

;char vt[30]=;

printf(

"規則數:");

scanf("%d

",&n);

line=n;

for(i=0;i<30;i++)

for(j=0;j<30;j++)

printf(

"請輸入文法:\n");

for(i=0;i)

l=0; m=0

;for(i=0;i)

}if(flag==0

)

}if(p[i][j]<='

z'&&p[i][j]>='a'

)

}if(flag==0

) }}

}count=0

; k=0

;for(i=0;i)

else

}count++;

k=0; }

flag=0

;for(i=0;i)}}

if(flag==1

) ,)\n");

}else

,)\n");

}printf(

"其中,\nk=

printf(

"}\n");

printf("e=

printf(

"}\n");

k=0;count=0

;for(i=0;i)

else

if(p[i][j]=='l'

) }}

count++;

k=0; }

printf("\n

");printf(

"m:\n");

l=0;while(vn[l]!='\0'

)

}printf(

"}\t");

l++;

}printf("\n

");l=0;k=0

;while(vt[k]!='\0'

)

}printf(

"}\t");

l++;

}k++;

printf("\n

");}

system(

"pause");

}

心得體會:

通過本次實驗,使我對有窮狀態自動機有了初步的了解,雖然沒有成功,但使我對自動機有了更深刻的理解

實驗三 有限自動機的構造與識別

實驗三 有限自動機的構造與識別 一 實驗目標 1 掌握有窮狀態自動機的概念 2 掌握有窮狀態自動機的儲存及表示方法 3 掌握有窮狀態自動機與正則式之間的關係。二 實驗要求 1 輸入正規式 2 構造該正規式的有窮狀態自動機 3.以五元組形式輸出。三 演算法 參見教材的轉換規則。練習 a b abb l...

實驗三 有限自動機的構造與識別

實驗三 有限自動機的構造與識別 一 實驗目標 1 掌握有窮狀態自動機的概念 2 掌握有窮狀態自動機的儲存及表示方法 3 掌握有窮狀態自動機與正則式之間的關係。二 實驗要求 1 輸入正規式 2 構造該正規式的有窮狀態自動機 3.以五元組形式輸出。nnfa的分列過程如下 32for j 0 j 3336...

1118實驗三有限自動機的構造與識別

include include include int main 存放非終結符號 char vt 30 存放終結符號 printf 請輸入規則個數 scanf d n line n for i 0 i 30 i 給字串陣列p,q全部賦值為 0 for j 0 j 30 j printf 請輸入文法 ...