(1)正规文法转正规式:本程序的数据结构是string类的字符串存储变量,首先,读入的是3型文法,即正规文法,关于文法的检验这里就不再进行(因为第一个实验里已经实现了),读入的还有一个flag,flag为0即为左线性,为1为右线性,对读入的文法先进行第一次归类,即正规式左部相同的放在一起,本程序使用vector容器实现的对象放置,然后对所有的没有外部依赖的元素进行整合,最后依据没有外部依赖的整合后的表达式对其他的正规文法进行转换,最终得到转换结果。
(2)正规式NFA本程序有很多数据结构,但最终的目的数据结构是存储转化好的NFA图的单元cell,里面包含起点、终点、边数以及边集合。
先读入正规式,并对正规式进行合法检测,将正规式中填入连接符号“+”,然后将其转化成后缀表达式,根据后缀表达式,对每一个操作符和操作数进行处理,处理的数据结构为cell类型的堆栈,处理完后,将最终栈内唯一的目的cell元素出栈,最后将其用二维数组的方式展现出来。
输入文件样例:a($|((a|d)(a|d)*))
2018/10/4 10:04:24 180KB 编译原理 正规式NFA 正规文法
1
实现功能:输入、输出、插入、删除、查找、追加、读入、显示、保存、拷贝、排序、索引、分类合计、退出。
2020/5/13 2:27:33 11KB c语言
1
Ansys软件经过读入风荷载时程曲线,施加风荷载到Beam4单元上。
2018/6/1 19:44:37 2KB Ansys 动荷载
1
非常强大的功能并有注释#include<windowsh>#include<mathh>#include<conioh>#include<stdioh>#include<stdlibh>#include<stringh>#include<timeh>timet函数头文件structStudent{charname[20]; 姓名chargender[20]; 性别chartel[20]; 电话 charemail[50]; 邮箱charaddress[100]; 地址};typedefstructStudentSS;给structStudent赋别名voidlogin; 登入模块voiddisplaymenu; 主菜单voidshowMenu; 汇总统计菜单voidsystemmenuSSstudentintlength; 菜单选择intinputInfoSSstudentintlength; 输入信息intcheckcharstring;"ESC"判断函数voidprintSSfind[]inti; 根据"i"输出特定成员信息voidoutputInfoSSstudentintlength; 输出信息intqueryInfoSSfindintlength; 查询信息voidqueryOutputSSfindintindex; voidqueryOutputInfoSSfindinti;voidstatisticSSstudentintlength; 汇总统计选择voidsingeloutputSSstudentintlength; 输出部分学生信息intreadsaveSSstudentintlength; 读取写入文件voidreadSSstudentintlength; 读取文件voidsaveSSstudentintlength; 保存文件voidcopyFileSSstudentintlength; 备份文件voidsavetime;保存登入时间voidCursorPositionintxinty; 设置光标位置voidshowwelcome;显示欢迎使用系统页面voidloginfocharname[]intn; 记录操作日志name用户名n操作方式voidDateoperate; 查看操作日志voiduser; 用户信息模块voidchangepw; 更改密码voidregistercontrol; 注册控制voidsourcetake; 资源占用voidlogout;intchangedlength0; 总共录入多少人intN1001; 数组的局限之处数组在分配空间的时候需要常量来计算不能确定大小不能分配所需空间大小charshowtime[30]; 时间存放字符数组intfirst1; 能否刚刚登入系统1代表是intflagread0; 能否已从文件读入信息0代表不是">非常强大的功能并有注释#include<windowsh>#include<mathh>#include<conioh>#include<stdioh>#includ
2022/9/7 21:57:01 28KB C语言 通讯录
1
分段存储管理系统:建立一个基本分段存储管理系统的模型。
(1)首先分配一片较大的内存空间,作为程序运转的可用存储空间;
(2)建立应用程序的模型,应该包括相应的分段描述与存储结构;
(3)建立进程的基本数据结构及相应算法(4)建立管理存储空间的基本存储结构。
(5)建立管理分段的基本数据结构与算法。
(6)设计存储空间的分配与回收算法;
(7)提供信息转储功能,可将存储信息存入磁盘,也可从磁盘读入;
2022/9/6 9:56:01 102KB 分段存储管理系统
1
GPS的51C程序,真实可用,串口读入,485输出,带正文
2022/9/3 19:11:59 135KB gps 51 stc15
1
hough变换提取椭圆步骤:1、读入图片(图片大小为),将图片二值化并提取边缘(用edge);
2、设置一个5维的参数空间并使初值为0;
3、对边缘点集中的每一点进行hough变换,如果p、q在图像范围内,则;
4、在参数空间中寻觅超过阈值的,就是椭圆的参数;
5、再对椭圆参数进行求精;
2022/9/2 23:25:03 204KB hough 变换 提取椭圆
1
从new.txt文件中读入写好的由正轨表达式(a|b)*(aa|bb)(a|b)*所转化的正轨文法(右线性),自动构造项目集族,生成LR分析表,并对输入的字符串通过LR分析表进行分析,输出分析过程,指出错误
2019/4/16 16:35:48 2.6MB 编译原理 LR分析器
1
用c语言实现的传统k_meams算法可以实现对任意维数的数据进行统计,计算中心点,并进行分类数据以文本的方式读入,以文本的方式输出。
2017/7/24 15:35:28 21KB
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡