91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 295KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-16
  • 語言: C/C++
  • 標簽: CFG??PDA??轉換??代碼??

資源簡介

代碼是基于VC++開發的,結構清晰,簡單易懂,能夠根據自己的需求更改代碼,且程序的實現較為簡單,執行較快。

資源截圖

代碼片段和文件信息

#include
#include
#include
#include
#include
#include“cfg_pda.h“
#include“pda_cfg.h“
#include“store.h“
void?cfg_pda();
void?pda_cfg();
int?length(char?temp[]);
void?digui(int?tempchar?s[]int?num);
Store?st1st3;
void?main()
{
int?choice=0;
cout<<“******CFG與PDA之間的相互轉換******“< cout<<“請選擇相應的操作:“< cout<<“1.cfg轉換為pda“< cout<<“2.pda轉換為cfg“< cout<<“0:退出操作!“< cin>>choice;
switch(choice)
{
case?1:
cfg_pda();
break;
case?2:
pda_cfg();
break;
case?0:
break;
default:
cout<<“輸入錯誤!“< break;
}
}
int?length(char?temp[])
{
int?i=0;
while(temp[i]!=‘\0‘)
i++;
return?i;
}
void?cfg_pda()
{
Cfg?cfg;
Elem?q;
int?num=0i=0;
int?VlengthPronum;
cout<<“***************************************“< cout<<“操作1:-----cfg轉換為pda------“< cout<<“G=(VTPS)請按順序輸入VTPS:“< cout<<“Variable:“;
cin>>cfg.Various;
cout<<“Terminal:“;
cin>>cfg.Terminal;
cout<<“Production:“< Vlength=length(cfg.Various);
while(Vlength!=0)
{
cfg.grammar[num].nextelem1=(Elem)malloc(sizeof(elem));
q=cfg.grammar[num].nextelem1;
cout<<“請輸入第“< cin>>q->leftelem>>Pronum;
q->nextelem=NULL;
while(Pronum!=0)
{
Elem?p=(Elem)malloc(sizeof(elem));
cin>>p->leftelem;
p->nextelem=NULL;
q->nextelem=p;
q=q->nextelem;

Pronum--;
}
num++;
Vlength--;
}
cout<<“Start_symble:“;
cin>>cfg.Start_symbol;
for(int?j=0;j if(cfg.Terminal[j]==‘$‘)
cfg.Terminal[j]=‘\0‘;
cout<<“***********************“< cout<<“cfg---->pda的輸出結果:“< cout<<“其中δ轉移函數為:“< for(j=0;j {
q=cfg.grammar[j].nextelem1;
while(q->nextelem!=NULL)
{
q=q->nextelem;
cout<<“δ(q$“<leftelem<<“)“< }
}
for(j=0;j cout<<“δ(q“< cout<<“***********************“<}
void?pda_cfg()
{
dailta?dail;
stacksymbol=‘Z‘;
int?sumnum=0k=0i=0;
int?dailnum=0j=0;
int?m=0n1=0n2=0n3=0n4=0n5=0;
int?num=0size=0mnum=0;
cout<<“***************************************“< cout<<“操作2:-----pda轉換為cfg------“< cout<<“P=(QΣΓδqZ)請按順序輸入QΣΓδqZ:“< cout<<“Q:“;
cin>>Q;
cout<<“Σ:“;
cin>>T;
cout<<“Γ:“;
cin>>V;
cout<<“δ的數目:“;
cin>>sumnum;
while(sumnum!=0)
{
cout<<“輸入第“< cin>>dail[k].cha>>dail[k].chb>>dail[k].chc>>dail[k].chd>>dail[k].che;
k++;
sumnum--;
dailnum++;
}
cout<<“q:“;
cin>>startstate;
num=strlen(V)-1;
for(i=0;i<200;i++)
for(j=0;j<200;j++)
{
st1[i].str[j]=‘\0‘;
st3[i].str[j]=‘\0‘;
}
for(i=0;i {
st1[i].str[0]=Q[i];
size++;
}
digui(numQsize);
i=strlen(Q);
mnum=pow(inum);

cout<<“***********************“< cout<<“pda

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????5958??2013-10-30?15:33??Translate\cfg_pda.cpp

?????文件????????327??2013-10-30?15:33??Translate\cfg_pda.h

?????文件??????26605??2013-10-30?15:34??Translate\Debug\cfg_pda.obj

?????文件?????254043??2013-10-30?15:34??Translate\Debug\Translate.exe

?????文件?????287420??2013-10-30?15:34??Translate\Debug\Translate.ilk

?????文件?????297680??2013-10-30?15:34??Translate\Debug\Translate.pch

?????文件?????566272??2013-10-30?15:34??Translate\Debug\Translate.pdb

?????文件??????74752??2013-10-30?15:34??Translate\Debug\vc60.idb

?????文件??????69632??2013-10-30?15:34??Translate\Debug\vc60.pdb

?????文件????????225??2013-10-30?15:33??Translate\pda_cfg.h

?????文件?????????54??2013-10-30?15:33??Translate\store.h

?????文件???????4496??2013-10-30?15:33??Translate\Translate.dsp

?????文件????????526??2013-10-30?15:33??Translate\Translate.dsw

?????文件??????50176??2013-10-30?15:49??Translate\Translate.ncb

?????文件??????48640??2013-10-30?15:49??Translate\Translate.opt

?????文件???????1011??2013-10-30?15:34??Translate\Translate.plg

?????目錄??????????0??2013-10-30?15:34??Translate\Debug

?????目錄??????????0??2013-10-30?15:49??Translate

-----------?---------??----------?-----??----

??????????????1687817????????????????????18


評論

共有 條評論