ex2.cpp

来自「这里是我在学校时所写的一些程序」· C++ 代码 · 共 77 行

CPP
77
字号
#include<iostream.h>
#include<String.h>
void main()
{
	const int MAXNUM=1000;
	enum sta {q0,q1,q2,q3};
	enum sta state;
	state=q0;
	char str[MAXNUM];
	cout<<"please input the string\n";
	cin>>str;
	int j=0;
	for(int i=0;i<(int)strlen(str);i++)
	{
		if(str[i]!='a'&&str[i]!='b')
		{
			cout<<"Unacceptable String!\n";
			return;
		}
		switch(state)
		{
		case q0:
			cout<<"(q0,";
			for(j=i;j<(int)strlen(str);j++)
				cout<<str[j];
			cout<<")-->\n";
			if(str[i]=='a')
				state=q1;
			else
				state=q2;
			break;
		case q1:
			cout<<"(q1,";
			for(j=i;j<(int)strlen(str);j++)
				cout<<str[j];
			cout<<")-->\n";

			if(str[i]=='a')
				state=q3;
			else
				state=q0;
			break;
		case q2:
			cout<<"(q2,";
			for(j=i;j<(int)strlen(str);j++)
				cout<<str[j];
			cout<<")-->\n";

			if(str[i]=='a')
				state=q0;
			else
				state=q3;
			break;
		case q3:
			cout<<"(q3,";
			for(j=i;j<(int)strlen(str);j++)
				cout<<str[j];
			cout<<")-->\n";

			if(str[i]=='a')
				state=q3;
			else
				state=q3;
			break;
		default:
			break;
		}
	}
	if(state==q0)
		cout<<"(q0,e)\nAcceptable String!\n";
	else
		cout<<"Unacceptable String!\n";

}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?