大连理工大学-工业数据分析与文件信息管理系统

一、设计任务
首先简述选题意义、设计目标与要实现的系统功能描述。
选题意义:智能制造是以工业生产数据分析、自动化技术为基础,具有信息深度自感知、智慧优化自决策、精准控制自执行等功能,使制造活动达到安全、高效、低损耗、高产出的业务目标.
工业大数据的技术及应用是提升制造业生产效率与竞争力的关键要素.工业大数据技术的目标就是从复杂的数据集中挖掘出有价值的信息,发现新的规律与模式,提高工业生产的效率从而促进工业生产模式的创新与发展.
系统功能描述:对工业数据以文本的形式进行读取并且完成初步的分析,进行均值,方差的计算,去除超过指定方差值的数据,将分析完成的数据文件的信息包括,文件名,行、列值,均值,方差,是否已处理进行记录并且存储在指定文件中,并且可以对该文件下的相关信息进行添加、删除、修改、排序、分类统计、打印存储等功能从而实现数据文件信息的管理。

二、程序使用说明
(1)程序设计语言与运行环境:运行环境为Dev-c++ 6.0。
(2)文件组成说明:程序由多个文件组成,包括文件信息存储文件filedata.txt,数据文本file1.txt、file2.txt、file3.txt等,在程序运行时将源文件与数据文件放入同文件夹中即可正常运行。
(3)操作说明:程序运行时,在人机交互操作时,输入功能按键即0~7进行功能选择,在与之对应的功能模块中,在系统的提示下进行功能的正确使用,从而实现对应的功能模块。
三、程序设计与实现
1.程序结构
此处描述预期实现系统的设计方案或功能设计的组成结构,绘制一个系统程序组成框图。

图1. 工业数据的分析与文件信息管理系统功能组成框图

2.数据描述
定义结构体数组,其成员变量包括,文件名称,行列值,数据文件初步处理后的均值以及方差并且通过整型变量记录文件是否已经处理。
struct data
{
char filename[20];//文件名称
int col;//列值
int row;//行值
float mean;//均值
float variance;//方差
int status;//是否处理
}FileData[1024];//结构体数组
3.功能模块设计
此处描述所有自定义函数的函数名、函数功能、参数说明及算法描述。选择1~2个主要函数绘制规范流程图(或N-S图。应至少包括分支和循环控制的结构)。每个函数按如下格式说明。
为实现上述功能,系统实现自定义函数14个。具体如下:
(1)函数名:void ReadFile()
函数功能:读入文件信息管理文件。
入口参数:无
出口参数:无
算法描述:打开文件信息管理文件.txt文件,以行为分隔按照数据类型进行成员变量分配。
(2)函数名:void linearSmooth5 ( double in[], int N )
函数功能:将数据文件中的数据通过五点平滑法,对数据进行更新并存储在新的指定文件中
入口参数:从数据文件中读取的数据以及数据个数
出口参数:无
算法描述:遍历数据数组,进行五点平滑算法,最后将结果存储在out数组中,并将最后的结果写入指定文件中。
(3)函数名:double Variance(double data[1024],double average, int count)
函数功能:读入数据文件中的数据并且计算其方差大小
入口参数:存放数据的数组、数据文件的均值、数据个数
出口参数: answer返回方差的大小
算法描述:对data数组中元素与均值的差值的平方进行求和操作,最后除count赋值给answer进行返回。
(4)函数名:double funcMean(double data[1024],int count)
函数功能:计算指定数据中数据的均值大小。
入口参数:浮点数数组以及元素个数
出口参数: 返回answer的值其表示均值
算法描述:循环累加data数组中元素的值,然后与count相除最后返回值。
(5)函数名:void WriteFile()
函数功能:通过循环将结构体数组中每一个结构体变量的数据写入指定文件中
入口参数:无
出口参数:无
算法描述:循环结构体数组,将结构体的各个成员变量写入指定文件
(6)函数名:void funcPrint()
函数功能:循环打印结构体数组中的成员变量到控制台,并且将结果写入文件。
入口参数:无
出口参数:无
算法描述:循环打印每个结构体的相关成员变量,同时写入文件管理文件
(7)函数名:void funcADDNew()
函数功能:添加新的数据文件信息,初步分析数据文件将均值、方差等成员变量数据添加到结构体数组中
入口参数:无
出口参数:无
算法描述:读取指定数据文件,调用函数初步计算数据的均值、方差等数据,并且调用平滑函数,将处理后的结果写入新的结构体变量中。
(8)函数名:void funcSort()
函数功能:将文件信息按照方差大小排序
入口参数:无
出口参数:无
算法描述:对结构体数组以方差为关键变量进行冒泡排序
(9)函数名:void funcCount()
函数功能:遍历文件信息结构体数组,以是否处理作为判断标准分类统计
入口参数:无
出口参数:无
算法描述:循环结构体数组,将每个结构体中的status值判断是1或者0,统计出两种状态的文件信息并且打印。
(10)函数名:void funcDelete()
函数功能:在数据文件管理文件中删除指定文件名的数据文件信息
入口参数:无
出口参数:无
算法描述:循环结构体数组将每个结构体的文件名变量与输入的文件名进行匹配,若一致,则删除该结构体。
(11)函数名:void funchange()
函数功能:输入文件名的,对存在的数据文件信息进行修改
入口参数:无
出口参数:无
算法描述:循环结构体数组,将每个结构体的文件名成员变量与程序输入的文件名进行匹配,若一致则再次输入该文件信息的所有变量。
(12)函数名:void funcSearch()
函数功能:循环结构体数组,以文件名为关键词进行搜索匹配并且输出相关变量
入口参数:无
出口参数:无
算法描述:循环结构体数组,将每个结构体的文件名变量与输入的文件名进行比对,若一致则输出,若遍历结束未找到则输出不存在。
(13)函数名:int funcMenu()
函数功能:功能菜单界面,函数方式调用功能菜单
入口参数:无
出口参数:无
算法描述:printf展示功能菜单,并且进行选择
(14)函数名:int main()
函数功能:主函数,调用功能函数进行选择,通过语句跳转到对应的功能函数模块
入口参数:无
出口参数:return 0
算法描述:通过switch将选中的功能跳转到对应的函数模块

源代码请加Q1010456772

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值