一种将流程图转换为可执行语言的方法技术

技术编号:10447870 阅读:152 留言:0更新日期:2014-09-18 11:23
本发明专利技术提出了一种将流程图转换为可执行语言的方法,该方法包括以下步骤:a.获取目标流程图数据、节点数据、节点关系数据信息并保存;b.根据节点数据、节点关系数据信息生成节点之间流向关系的节点序列;c.将节点数据中的节点编号生成对应的语句标号;d.根据节点数据信息生成流程图每个节点对应的表达式;e.根据节点序列中下一个节点的信息,生成goto语句。本发明专利技术充分利用了goto语句的跳转功能和流程图中的节点流向关系,在将用户所做复杂流程图转换成可执行语言的过程中避免了多次使用if条件语句嵌套造成混乱的影响;结构清晰,减少了在编程语句出现问题时编程人员检测错误语句的时间,便于维护,提高编程效率;本发明专利技术实现了用户与流程图更好地交互。

【技术实现步骤摘要】

本专利技术涉及信息
,特别涉及一种将流程图转换为可执行语言的方法
技术介绍
流程图是流经一个系统的信息流、观点流、或部件流的图形代表。流程图是揭示和掌握封闭系统运动状况的有效方式。作为诊断工具,它能够辅助决策制定,让管理者清楚地知道问题可能出在什么地方,从而确定可供选择的行动方案。从使用的角度讲,用户或管理者针对某一业务、管理、生产、销售流程等创建流程图并使用或者允许他人使用,不用去考虑如何把流程图及其内容转换为可执行的计算机语言;从技术的角度讲,编程人员需要获取流程图各节点的数据信息,把用户所做的流程图转换成可执行语言,并且尽可能地提升语言的执行效果,实现用户与流程图更好地交互。然而,在实际的过程中,把用户的流程图内容转换成可执行语言时因大部分流程图涉及到一个或多个判断节点,形成了多种选择路径,尤其是特别庞大而复杂的流程图,编程人员如果采用传统的方法需要使用多个if条件语句实现,在嵌套条件几十个甚至上百个的情况下很容易造成语句混乱,编程人员在检查语句时也费时费力且不利于维护。
技术实现思路
针对现有的将流程图转换为可执行语言的问题,本专利技术提出了一种将流程图转换为可执行语言的方法,获取流程图相关数据信息,根据节点之间的流向关系生成节点序列,生成语句标号,生成节点表达式,再根据节点序列中下一个节点的信息生成goto语句。为实现上述
技术实现思路
,本专利技术采用了一种将流程图转换为可执行语言的优化方法,该方r>法包括以下步骤:a.获取目标流程图数据、节点数据、节点关系数据信息并保存;b.根据节点数据、节点关系数据信息生成节点之间流向关系的节点序列;c.将节点数据中的节点编号生成对应的语句标号;d.根据节点数据信息生成流程图每个节点对应的表达式;e.根据节点序列中下一个节点的信息,生成goto语句。进一步,所述流程图节点类型包括开始节点、判断节点、执行节点、结束节点。进一步,在流程图转换为可执行语言的过程中,根据节点数据信息取得节点类型,如果节点类型是开始节点,取到其下一个节点的编号,生成goto语句使其跳转至其下一个节点编号对应的语句标号;如果节点类型是执行节点,取到其下一个节点的编号,生成goto语句使其跳转至其下一个节点编号对应的语句标号;如果节点类型是判断节点,则使用特定语句处理其分支内容,并生成goto语句使其跳转至相应的子节点编号对应的语句标号;如果节点类型是结束节点,该节点无下一个节点,无需生成goto语句。进一步,对于判断节点,该节点有几个子节点,其节点编号对应的语句标号下生成几个相应的goto语句。进一步,所述特定语句为if语句。进一步,所述特定语句为switch语句。另外,本专利技术所涉及的流程图是已经确定的流程图,不能再做修改;如果修改,则作为新的流程图看待。与现有技术相比,本专利技术充分利用了goto语句的跳转功能和流程图中的节点流向关系,在将用户所做复杂流程图转换成可执行语言的过程中避免了多次使用if条件语句嵌套造成混乱的影响;结构清晰,减少了在编程语句出现问题时编程人员检测错误语句的时间,便于维护,提高编程效率;同时,本专利技术实现了用户与流程图更好地交互。附图说明图1为本专利技术所提供的一种将流程图转换为可执行语言的方法的流程图;图2为本专利技术所提供的一种将流程图转换为可执行语言的方法的节点转换过程图;图3-1为本专利技术所提供的流程图中判断节点转换if语句实施例;图3-2为本专利技术所提供的流程图中判断节点转换switch语句实施例。具体实施方式为了使本专利技术所提到的一种将流程图转换为可执行语言的方法及其优点更加清楚明确,以下参照附图对本专利技术进行更进一步的详细说明。图1为本专利技术所提供的一种将流程图转换为可执行语言的方法的流程图,如图1所示,该方法的主要流程步骤如下:步骤1,获取目标流程图数据、节点数据、节点关系数据信息并保存。把流程图转换成可执行语言,首先需要获取流程图的相关数据信息,其中,流程图数据主要包括流程图编号、名称、类型、状态、描述等信息;节点数据主要包括节点编号、表达式类型、表达式状态、表达式返回类型、表达式描述等信息;节点关系数据主要包括节点编号、子节点编号、节点状态、节点描述等。步骤2,根据节点数据、节点关系数据信息生成节点之间流向关系的节点序列。实现本专利技术的一个重要环节就是节点间的流向关系,即当前节点是何种类型的节点,其下一个节点或每个条件节点是哪个节点,依次类推,形成节点序列。步骤3,将节点数据中的节点编号生成对应的语句标号。流程图中的所有节点是按照一定规则编号的,是有序的,且同一流程图中使用的编号规则和编号数据类型相同。同样,节点编号对应的语句标号也是按照一定规则标号的,是有序的,且同一流程图中使用的标号规则和语句标号数据类型相同。例如:使用P表示节点,P1,P2,P3,...,PN(其中N≥3)表示各个节点的编号。使用L表示其对应的语句标号,生成L1,L2,L3,...,LN(其中N≥3)。步骤4,根据节点数据信息生成流程图每个节点对应的表达式。流程图中无论是开始节点、执行节点、判断节点、结束节点,每个节点都有其对应的表达式。步骤5,根据节点序列中下一个节点的信息,生成goto语句。根据步骤2中的节点序列中每个节点的下一个节点的编号,生成goto语句跳转至下一个节点的编号对应的语句标号。图2为本专利技术所提供的一种将流程图转换为可执行语言的方法的节点转换过程图,如图2所示,该过程如下:根据节点数据信息取得节点类型,如果节点类型是开始节点,取到其下一个节点的编号,生成goto语句使其跳转至其下一个节点编号对应的语句标号。图2中,假定开始节点对应的下一个节点的语句标号为A,则生成goto语句使其跳转至A,“goto A”;如果节点类型是执行节点,取到其下一个节点的编号,生成goto语句使其跳转至其下一个节点编号对应的语句标号。假定执行节点对应的下一个节点的语句标号为B,则生成goto语句使其跳转至B,“gotoB”;如果节点类型是判断节点,则使用特定语句处理其分支内容,并生成goto语句使其跳转至相应的子节点编号对应的语句标号。假定判断节点对应的子节点的语句标号为C1、C2、...,则依次生成goto语句使其跳转至C1、C2、...,“goto C1”、“goto C2”“goto...”;如果节点类型是结束节点,该节点无下一个节点,无需生成goto语句。进一步,如果目标流程图逻辑有问题或者说用户画的流程图不正确,采用本文档来自技高网...

【技术保护点】
一种将流程图转换为可执行语言的方法,其特征在于,该方法包括以下步骤:a.获取目标流程图数据、节点数据、节点关系数据信息并保存;b.根据节点数据、节点关系数据信息生成节点之间流向关系的节点序列;c.将节点数据中的节点编号生成对应的语句标号;d.根据节点数据信息生成流程图每个节点对应的表达式;e.根据节点序列中下一个节点的信息,生成goto语句。

【技术特征摘要】
1.一种将流程图转换为可执行语言的方法,其特征在于,该方法包括以下步骤:
a.获取目标流程图数据、节点数据、节点关系数据信息并保存;
b.根据节点数据、节点关系数据信息生成节点之间流向关系的节点序列;
c.将节点数据中的节点编号生成对应的语句标号;
d.根据节点数据信息生成流程图每个节点对应的表达式;
e.根据节点序列中下一个节点的信息,生成goto语句。
2.如权利要求1所述的一种将流程图转换为可执行语言的方法,其特征在于,所述流程
图节点类型包括开始节点、判断节点、执行节点、结束节点。
3.如权利要求1所述的一种将流程图转换为可执行语言的方法,其特征在于,在流程图
转换为可执行语言的过程中,根据节点数据信息取得节点类型,如果节点类型是开始节点,取
到其下一个节点的编号,生成goto语句使其跳转...

【专利技术属性】
技术研发人员:牟春林
申请(专利权)人:苏州精易会信息技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1