首页> 中国专利> 表达式的树状显示方法及求值方法

表达式的树状显示方法及求值方法

摘要

本发明揭露了一种表达式的树状显示方法,所述表达式包含若干运算符和原始数据类型,所述方法包括:将表达式中最低优先级的运算符作为根节点显示;和将所述运算符的处理对象作为孩子节点或者子树显示。如果所述运算符的处理对象为原始数据类型,则作为孩子节点显示;如果所述运算符的处理对象为子表达式,则不展开时作为孩子节点显示,展开时作为子树显示,也即将子表达式中最低优先级的运算符作为子树的根节点显示;和将所述子表达式中最低优先级的运算符的处理对象继续作为孩子节点或者子树显示。本发明按照表达式或者公式的运算优先级以及运算符和数据之间的关系进行分级的树状显示,使用户更容易理解所述表达式的含义。

著录项

  • 公开/公告号CN102004613A

    专利类型发明专利

  • 公开/公告日2011-04-06

    原文格式PDF

  • 申请/专利权人 无锡永中软件有限公司;

    申请/专利号CN201010577669.9

  • 发明设计人 俞志刚;

    申请日2010-12-07

  • 分类号G06F3/048(20060101);

  • 代理机构32236 无锡互维知识产权代理有限公司;

  • 代理人王爱伟

  • 地址 214135 江苏省无锡市国家高新技术产业开发区震泽路18号无锡(国家)软件园金牛座D区5、6层

  • 入库时间 2023-12-18 01:48:00

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-03-15

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F17/22 变更前: 变更后: 申请日:20101207

    专利权人的姓名或者名称、地址的变更

  • 2015-12-09

    授权

    授权

  • 2011-05-25

    实质审查的生效 IPC(主分类):G06F3/048 申请日:20101207

    实质审查的生效

  • 2011-04-06

    公开

    公开

说明书

【技术领域】

本发明涉及用户界面显示领域,特别涉及表达式的树状显示及其在电子表格中的应用。

【背景技术】

各种应用程序在诸如微软公司的Windows操作系统、谷歌公司的Android操作系统和苹果公司的Mac OS操作系统等图像用户界面上接受、操作和显示内容。比如无锡永中科技的OFFICE应用程序中的电子表格程序就是在图形用户界面上显示各种格式的数据的一种应用程序。电子表格应用程序或称应用程序相对而言是广为人知和有用的工具。通常电子表格应用程序通过捕捉、显示和操作行和列中所排列的数据来模拟有型的数据表。相交的行和列在电子表格中形成许多单元格。通常,每个单元格将包含一个数据项和/或一个数学公式。

一般而言,电子表格应用程序中的某个单元格中的公式是对其他单元格中的数据的处理,所述其他单元格中的数据可能是数值、文本和布尔值等等,而所述公式可能包括算术运算符、比较运算符、文本运算符和函数等等。所述公式在显示时通常是线性排列的。比如公式D1=1.2*A1+(B1-C1)/3,其中A1、B1、C1和D1分别表示所述公式所在电子表格的工作表的第一行中第一个单元格、第二个单元格、第三个单元格和第四个单元格,那么电子表格应用程序在显示这个公式时,则在第一行的第四个单元格中显示“=1.2*A1+(B1-C1)/3”。显然,由于日常阅读到的公式都是中缀表达式来表示的,当所述公式仅由简单的算术运算符等构成时,对于读者来说该公式是易于理解的。但是当所述公式包括了多个单元格数据、多个运算符和/或多个函数以及函数嵌套时,那么所述公式所代表的内容将是不容易被理解的。比如:

{=IF(ISERR(SMALL(IF(Data<>″″,ROW(INDIRECT(″1:″&ROWS(Data)))),ROW(INDIRECT(″1:″&ROWS(Data))))),″″,INDEX(Data,SMALL(IF(Data<>″″,ROW(INDIRECT(″1:″&ROWS(Data)))),ROW(INDIRECT(″1:″&ROWS(Data))))))},                                                    --------公式1

相信类似于公式1的复杂公式对于非公式本身编写者的用户都是不容易理解的,哪怕是该公式本身的编写者在经过一段时间后重新来查阅这个公式时都将是不容易理解的。

但是在实际应用程序中,一个电子表格经常会经由一个用户转移给另外一个用户查看,或者一个固定用户不定时查看该电子表格。如果所述电子表格中包括了较为复杂的公式,那么对于用户来讲理解该公式是不方便的。此外,一些其他诸如教学应用程序或者工程计算应用程序中的公式或者表达式也存在此类问题,造成了这些应用程序的用户体验较差。

因此,有必要提出一种新的技术方案来解决上述缺点。

【发明内容】

本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。

本发明的一个目的在于提供一种表达式的树状显示方法,可以使用户更容易地理解所述表达式的含义。

本发明的另一目的在于提供一种表达式的求值方法,利用所述表达式的树状显示求值,使用户更容易地理解所述表达式的运算过程和结果。

为了达到本发明的目的,根据本发明的一个方面,本发明提供了一种表达式的树状显示方法,所述表达式包含若干运算符和原始数据类型,所述方法包括:将表达式中最低优先级的运算符作为根节点显示;和将所述运算符的处理对象作为孩子节点或者子树显示。

进一步地,如果所述运算符的处理对象为原始数据类型,则作为孩子节点显示;如果所述运算符的处理对象为子表达式,则作为子树显示,所述子树显示为:将子表达式中最低优先级的运算符作为子树的根节点显示;和将所述子表达式中最低优先级的运算符的处理对象继续作为孩子节点或者子树显示。

进一步地,所述原始数据类型包括数值、文本、布尔值、错误值和函数参数中的一种或者多种。

进一步地,所述运算符包括算术运算符、比较运算符、文本连接运算符、引用运算符和函数中的一种或者多种。

进一步地,所述函数包括文本函数、日期和时间函数、查找和引用函数、逻辑函数、工程函数、数学和三角函数、财务函数、统计函数、信息函数、加载宏和自动化函数、数据库函数和多维数据集函数中的一种或者多种。

进一步地,所述运算符的运算优先级顺序由用户预先定义。

进一步地,所述原始数据类型作为孩子节点显示时,所述孩子节点显示原始数据类型所代表的数据信息;和/或所述运算符作为父亲节点显示时,所述父亲节点显示所述运算符所代表的运算信息。

进一步地,所述原始数据类型包括位于单元格内的数值、文本、布尔值或错误值;所述原始数据类型所代表的数据信息包括所述原始数据类型对应单元格所属行和列的地址信息、所述原始数据类型对应单元格所属行的名称或所属列的名称。

进一步地,所述运算符所代表的运算信息包括运算符的数学表示、函数表示、自身含义解释信息和当前运算符的运算结果。

进一步地,所述节点为方形、圆形和三维立体形状中的一种和多种,所述节点之间通过线形、箭形或圆柱形的图形连接,所述节点利用预定符号表示是否能够展开。

根据本发明的另一方面,本发明提供一种表达式求值方法,所述方法包括:当所述表达式的树状显示中的某一节点显示区域接收到预定信号;计算以所述节点为根节点的树或者子树所代表的子表达式的计算结果;和按照预定方式显示所述计算结果。

进一步地,所述预定信号是用户利用输入设备在所述节点显示区域的框选信号、单击信号、双击信号或停留预定时长信号,所述预定方式是弹出新对话框方式、批注方式或者在当前节点显示方式。

与现有技术相比,本发明按照表达式或者公式的运算优先级以及运算符和数据之间的关系进行分级的树状显示,使用户更容易理解所述表达式的含义。同时,基于所述表达式的树状显示求值,可以使用户更容易理解所述表达式的求值过程和更直观地获得计算结果。

【附图说明】

结合参考附图及接下来的详细描述,本发明将更容易理解,其中同样的附图标记对应同样的结构部件,其中:

图1为本发明的一个实施例中使用的计算机的说明性计算机体系结构;

图2为本发明的一个实施例中的表达式的树状显示方法的方法流程图;

图3为本发明的一个实施例中的表达式的树状显示方法的部分方法流程图;

图4A-图4I为本发明的一个实施例中利用所述表达式的树状显示方法对公式D=1.2*A+(B-C)/3进行显示时的若干示意图;

图5为本发明的一个实施例中的表达式的求值方法的方法流程图;

图6A-图6F为本发明的一个实施例中利用所述公式的树状显示方法进行公示显示时的若干示意图;和

图7为本发明的一个实施例中利用所述公式的树状显示方法对公示1进行显示时的界面示意图。

【具体实施方式】

本发明的详细描述主要通过程序、步骤、逻辑块、过程或其他象征性的描述来直接或间接地模拟本发明技术方案的运作。为透彻的理解本发明,在接下来的描述中陈述了很多特定细节。而在没有这些特定细节时,本发明则可能仍可实现。所属领域内的技术人员使用此处的这些描述和陈述向所属领域内的其他技术人员有效的介绍他们的工作本质。换句话说,为避免混淆本发明的目的,由于熟知的方法、程序和成分已经很容易理解,因此它们并未被详细描述。

此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。此外,表示一个或多个实施例的方法、流程图或功能框图中的模块顺序并非固定的指代任何特定顺序,也不构成对本发明的限制。

在本发明的实施例中,所述表达式的树状显示方法及求值方法可以由软件、硬件及其两者的结合实施成为一个模块、一个系统或者一个系统的一部分。所述表达式按照运算优先级以及运算符和原始数据类型之间的关系进行分级的树状显示,其中叶子节点通常表示被处理的原始数据类型,比如数值和文本等等,其中非叶子节点通常表示运算符。特别地,为了便于描述本发明,本文中的运算符不仅表示传统意义的算术运算符、比较运算符、文本连接运算符和引用运算符等,还同时涵盖表示了多种函数,比如文本函数、日期和时间函数、查找和引用函数、逻辑函数、工程函数、数学和三角函数等等,即本文中所述运算符具有更为广泛的意义。

由于本发明的实施例通常结合一定的计算环境、计算机系统或者说硬件来实现。故图1及相应的描述旨在提供对可以实现本发明的实施例中的合适的计算环境进行简单和概括的描述。尽管图1中利用在服务器或者个人计算机系统上执行的计算环境作为一般性环境来描述本发明,但是本领域的技术人员应该意识到,本发明也可以结合其它类型的计算机系统和程序模块来实现。

一般而言,程序模块包括执行特定任务或实现特定的抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。而且,本领域的技术人员将了解,本发明可以用诸如包括手持式设备、多处理器系统、基于微处理器的或者可编程消费电子产品、小型计算机、大型计算机等计算机系统配置来实施。并且,本发明也可以在分布式计算环境中来实施,其可以用通过网络连接的远程处理设备来执行任务,在分布式计算环境中,程序模块可以位于本地和远程存储设备两者中的任意位置。

请参考图1,其示出了本发明的一个实施例中使用的计算机100的说明性计算机体系结构。所述计算机100为常规的台式计算机或者膝上型笔记本,所述计算机100包括中央处理单元(CPU)101、包括随机存取存储器(RAM)102和只读存储器(ROM)103的系统存储器104,以及连接系统存储器104和中央处理单元101的系统总线105。所述计算机100还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)106,和用于存储操作系统、应用程序和其他程序模块的大容量存储设备107。

所述基本输入/输出系统106包括有用于显示信息的显示器108和用于用户输入信息的诸如鼠标、键盘之类的输入设备109。其中所述显示器108和输入设备109都通过连接到系统总线105的输入输出控制器110连接到中央处理单元101。所述基本输入/输出系统106还可以包括输入输出控制器110以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器110还提供输出到显示屏、打印机或其他类型的输出设备。

所述大容量存储设备107通过连接到系统总线105的大容量存储控制器(未示出)连接到中央处理单元101。所述大容量存储设备107及其相关联的计算机可读介质为计算机100提供非易失性存储。也就是说,所述大容量存储设备107可以包括诸如硬盘或者CD-ROM驱动器之类的计算机可读介质(未示出)。

不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、EPROM、EEPROM、闪存或其他固态存储其技术,CD-ROM、DVD或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。

根据本发明的各种实施例,所述计算机100还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机100可以通过连接在所述系统总线105上的网络接口单元111连接到网络112,或者说,也可以使用网络接口单元111来连接到其他类型的网络或远程计算机系统(未示出)。

多个程序模块和数据文件可以存储在计算机100的大容量存储设备107和RAM中,这可以包括适用于控制联网个人计算机的操作系统113。同时大容量存储设备107和RAM也可以存储一个或多个程序模块。特别地,所述大容量存储设备107和RAM中可以存储电子表格应用程序114。而且,电子表格应用程序114可以用于生成、访问和修改例如工作薄115。

根据本发明的一个实施例,电子表格应用程序114包括来自无锡永中软件有限公司的电子表格应用程序。然而应当意识到,也可以利用来自其他制造商的其他电子表格应用程序或者其他包含表达式的应用程序来体现在此描述或预期的各种方面。下文中,基于图1所示的计算环境对本发明在包含表达式的应用程序、在电子表格应用程序中的具体实施分别做进一步地描述。

应当了解,一个表达式是由若干个原始数据类型和运算符来构成的。比如表达式D=1.2*A+(B-C)/3,其中“*”就是一个表示乘法的运算符,1.2就是一个代表常量的原始数据类型。根据表达式的运算优先级及所包含的运算符和原始数据类型多寡,所述表达式还可以包括一个子表达式,当然也可以包含多个子表达式,比如表达式D=1.2*A+(B-C)/3可以看做是子表达式“1.2*A”和“(B-C)/3”,以及运算符“+”构成的。所述子表达式又是由若干运算符和原始数据类型构成。也即运算符和原始数据类型都是构成表达式或者子表达式的基本单元。

所述原始数据类型可以是数值、文本、布尔值、错误值和函数参数中的一种或者多种。视不同的应用环境而定,其中数值可以是诸如十进制表示的“1864”、八进制表示的“5621”或者表示时间的“2009/10/12”;所述文本可以是诸如字符串“hello world”、“this is an apple”;所述布尔值可以是诸如表示正确的“TRUE”和表示错误的“FALSE”;所述函数参数可以是诸如求2的三次方中指数函数的幂数“3”、还比如可以是“=PROPER(“this is an example”)”中的“this is an example”,其中PROPER函数是将单词中的首字符大写的文本处理函数。所述错误值是一种特定的数据,所述错误值是在应用程序中由于输入错误、不符合显示要求的内容,计算结果出错等等产生的,比如“####”、“#DIV/0!”、“#N/A”等。可见,在此列出的只是原始数据类型的一些方面。

所述运算符可以为算术运算符、比较运算符、文本连接运算符、引用运算符和函数中的一种或者多种,视不同的应用环境而定。所述函数可以为文本函数、日期和时间函数、查找和引用函数、逻辑函数、工程函数、数学和三角函数、财务函数、统计函数、信息函数、加载宏和自动化函数、数据库函数和多维数据集函数中的一种或者多种。所述运算符的运算优先级顺序可以由用户或者程序模块预先定义。为了更好地显示所述表达式的结构,本发明人创造性地将表达式显示为树状结构。

请参考图2,其示出了本发明的一个实施例中的表达式的树状显示方法200的方法流程图。所述表达式的树状显示方法200可以在诸如教学应用程序、工程计算应用程序和银行统计分析应用程序等包含表达式的程序模块中实施。所述表达式的树状显示方法200包括:

步骤220,将表达式中最低优先级的运算符作为根节点显示;

由于不同的实施例中,所述表达式可以是不同的。但不论所述表达式包含多少个运算符和原始数据类型,所述表达式中的运算符都有一定的运算优先级顺序,首先将表达式中的最低优先级的运算符作为根节点显示。

步骤240,将所述运算符的处理对象作为孩子节点或者子树显示;

对于表达式中的最低优先级的运算符,如果所述表达式较为简单,则该运算符的运算对象可能直接是原始数据类型,不可再拆分。当然如果所述表达式较为复杂,则该运算符的运算对象可能是一个子表达式。当所述运算对象是子表达式时,可以将其显示为一棵子树。

在一个实施例中,对于所述步骤220中所述最低优先级的运算符的处理对象,首先判断其是否是子表达式,也即步骤242。

如果所述运算符的处理对象是原始数据类型,则步骤244,将其作为孩子节点显示;

如果所述运算符的处理对象是子表达式时,则步骤246,将其作为一个子树显示,具体为首先将子表达式中最低优先级的运算符作为子树的根节点显示;然后步骤248,将子表达式中最低优先级的运算符的处理对象继续作为孩子节点或者子树显示。显然对于步骤248,其本质依然是步骤240,即对于一个包含子表达式的表达式的分析显示过程,可以视为一个递归问题。对于不同的表达式或者子表达式,本领域的技术人员可以利用上述分析将其显示为一棵树。

结合一个具体的实施例,假设所述表达式是D=1.2*A+(B-C)/3,经分析可知,所述表达式中最低优先级的运算符为“+”,所述运算符“+”的处理对象是子表达式“1.2*A”和子表达式“(B-C)/3”,则首先将运算符“+”作为根节点显示,如图4A所示。

然后将子表达式“1.2*A”和子表达式“(B-C)/3”作为子树显示,其中子表达式“1.2*A”中最低优先级的运算符为“*”,所述运算符“*”的处理对象是原始数据类型“1.2”和“A”,将所述运算符“*”继续作为第一子树的根节点显示,并将原始数据类型“1.2”和“A”作为孩子节点显示,如图4C所示。

其中子表达式“(B-C)/3”中最低优先级的运算符为“/”,所述运算符“/”的处理对象是子表达式“B-C”和原始数据类型“3”。将所述运算符“/”作为第二子树的根节点显示,并将原始数据类型“3”作为孩子节点显示,如图4D所示。并且对于子表达式“B-C”中最低优先级的运算符为“-”,所述运算符“-”的处理对象是原始数据类型“B”和“C”。将所述运算符“-”继续作为第三子树的根节点显示,并将原始数据类型“B”和“C”作为孩子节点显示,如图4E所示。至此,所述表达式D=1.2*A+(B-C)/3被显示为一棵树。

在一些实施例中,所述子表达式可以暂时显示为一个节点,或者说一个可以展开的节点或者类似表示,如图4B、图4C、图4D中显示的节点402。然后所述节点402在被用户选中、单击、双击或者停留一段时间等等,也即输入某一信号后,可以展开显示,比如如4B中代表子表达式“1.2*A”的节点402被用户单击后,显示为如图4C所示的树状结构。在另外一些实施例中,还可以将“D=”也作为一个节点显示,置于表达式的根节点的上层,如图4F显示。

显然地,对于不同的表达式,根据具体表达式中包括的运算符优先级顺序、运算符的多少和运算符的类型,所述表达式的树状显示方法200中的递归处理过程可能会相应增加和减少。另一方面,对于不同的实施例,由于实施的技术人员不同,所述叶子节点的外形可以显示为方形、圆形和三维立体形状中的一种和多种,如图4G所示;所述叶子节点的显示内容可以显示所述数据本身,也可以显示所述数据所代表的数据信息,如图4H所示。在图4H所示实施例中,所述叶子节点表示重量、单位是千克和具体数值是88,那么所述叶子节点可以分别显示“重量”、“88千克”、“千克”、“88”或者“重量88千克”中的一种或者几种,所述叶子节点的显示方式可以是每隔预定时间自动切换,也可以是接收到用户相应的输入信号后切换(比如用户鼠标在所述叶子节点上左击),还可以是以批注或者弹出对话框方式显示(比如用户的鼠标停留在所述叶子节点上预定时间)。相应地,所述运算符作为父亲节点或者“根”节点显示时,所述父亲节点也可以显示所述运算符本身,也可以显示所述运算符所代表的运算信息或者运算结果,如图4I所示。在图4I所示实施例中,所述父亲节点表示加法+,那么所述父亲节点可以分别显示为“+”、“SUM”、“加”、“SUM:返回一个指定单元格区域中所有数字之和。”和运算结果“16”中的一种或者几种,而且,所述父亲节点的显示方式可以是每隔预定时间自动切换,也可以是接收到用户相应的输入信号后切换,还可以是以批注或者弹出对话框方式显示。另外在各级节点之间可以通过曲线、折线、条状、柱状或者其他连接方式来显示各个节点之间的关系。所述节点也可以利用诸如“+”和“-”之类的符号来表示其是否能够继续展开。

综上所述,本发明所述表达式的树状显示方法可以将复杂的表达式转化为结构层次清楚、运算关系清晰的树状结构来显示。所述表达式的树状显示方法可以实施成为教学应用程序、工程计算应用程序、银行统计分析应用程序和电子表格应用程序中的一个表达式显示模块或者一个表达式分析审核模块。当用户利用该模块对复杂的表达式进行分析时,可以快速的弄懂表达式的含义。

基于上述表达式的树状显示,本发明还提供一种表达式的求值方法,可以继续参考图5,其示出了本发明的一个实施例中的表达式的求值方法500的方法流程图。所述表达式的求值方法500包括:

步骤502,当所述表达式的树状显示中的某一节点显示区域接收到预定信号;所述预定信号可以是用户利用输入设备在所述节点显示区域的框选信号、单击信号、双击信号或停留预定时长信号等等。视不同的技术人员实施或者不同的实施例而定。

步骤504,计算以所述节点为根节点的树或者子树所代表的子表达式的计算结果;对于一棵树或者子树所代表的子表达式如何求值,是本领域技术人员所熟知的内容,在此不再做详细阐述。

步骤506,按照预定方式显示所述计算结果。所述预定方式可以是弹出新对话框方式、批注方式或者在当前节点显示方式。

显然,利用图5所示表达式的求值方法500可以使用户在直观、清晰地树状显示中查看每个节点的运算结果和整个表达式的求值过程。更容易发现运算中的错误或者逻辑等等信息。

由于在不同的程序模块中进行实施时,一方面,由于所述程序模块自身实施的特点,所述表达式的树状显示方法可能需要根据中缀表达式转换为后缀表达式、后缀表达式的树状转换和表达式求值等技术手段来实施,这些技术手段都是本领域技术人员所熟知的内容,本文不再累述。另一方面,所述表达式的树状显示方法还可以根据不同的程序模块的特点进一步地优化,故本发明同时提供所述表达式的树状显示方法在电子表格应用程序中的应用方案。

一般地,电子表格应用程序中的公式处理的对象都是单元格或者单元格的集合。单元格内的数据可以是数值、文本、布尔值、错误值和函数参数中的一种或者多种(函数参数或者常量也可能是用户手动输入到公式中的)。其中数值可以是诸如十进制表示的“1864”、八进制表示的“5621”或者表示时间的“2009/10/12”;所述文本可以是诸如字符串“hello world”、“this is an apple”;所述布尔值可以是诸如表示正确的“TRUE”和表示错误的“FALSE”;所述函数参数可以是诸如求2的三次方中指数函数的幂数“3”、还可以是“=PROPER(“this is an example”)”中的“this is an example”,其中PROPER函数是将单词中的首字符大写的文本处理函数。所述错误值是电子表格应用程序中一种特定的数据,所述错误值是由于输入错误、不符合显示要求的内容,公式计算结果出错等等导致的,比如“####”、“#DIV/0!”、“#N/A”等。也就是说,在电子表格实施例中,所述原始数据类型包括位于单元格内的数值、文本、布尔值、错误值或函数参数。当然还包括用户手动输入到公式中的常量或者变量。而优选地,所述原始数据类型作为节点显示时还可以显示所述原始数据类型对应单元格所代表的数据信息。比如所述原始数据类型对应单元格所属行和列的地址信息、所述原始数据类型对应单元格所属行的名称或所属列的名称。在一个具体的实施例中,地址为“H5”的单元格所属H列的名称为“单价”,所述单元格的数值为“10”,则其作为叶子节点显示时可以显示为“H5”、“单价”和“10”中的任意一种。

基于同样的原理,所述运算符作为节点显示时,也可以显示所述运算符所代表的运算信息。所述运算符的运算信息可以是所述运算符自身的数学表示、文字表示或者函数表示等;所述运算符的运算信息还可以是所述运算符的自身含义解释信息和当前运算结果。

在一个具体的实施例中,假设张三是一名刚上任的小学三年级班主任老师,在查看上学期班级同学的成绩单时,从电子表格应用程序中获得如图6A所示的前任班主任记载的学生成绩表600。所述学生成绩600中分别记录了同学A、同学B、同学C、同学D和同学E的上学期期末考试语文、数学和德育三门功课的成绩,并且所述学生成绩表600中还包括了前任班主任老师给予的评定结果。张老师了解到语文和数学都是100满分,德育是60满分,同时在评定结果栏中E2单元格中获得如下公式:

=IF(AVERAGE(B2:C2,D2*100/60)>85,CONCATENATE(A2,″优秀

″),IF(AVERAGE(B2:C2,D2*100/60)<60,CONCATENATE(A2,″不及格

″),CONCATENATE(A2,″普通″))),                      --------公式2

那么现在张老师在分析前任班主任老师的评定方法时,就需要具体分析这个公式的含义,但是显然的所述公式2是不容易理解的。那么张老师利用所述公式的树状显示方法实施成为的公式审阅模块将所述公式重新显示后,获得如图6B所示的公式显示结果。显然,通过如图6B所示的树状结构很容易地理解所述公式2。

更详细地讲,张老师在利用所述公式的树状显示方法实施成为的公式审阅模块将所述公式重新显示后,首先获得的是如图6C所示的公式显示结果,根据所述公式显示结果,很容易的判断出,所述公式判断条件“平均数”是否大于“85”,如果是,则连接文本同学A”和“优秀”;如果不是,则继续“判断”。所述“平均数”是什么数据的平均数,可以通过展开节点601继续获知,所述继续“判断”判断什么内容,还可以继续通过展开节点602继续获知。

为此,张老师继续点击所述节点601,继续得到如图6D所示的公式显示结果,根据所述公式显示结果,很容易的判断出,所述平均数语文德育100/60三项内容的平均数,也就是将德育分数转换为100分满分值后与语文数学的平均数,也即学生的平均成绩。至此,已经可以得知,前任班主任将平均成绩在85分以上的学生评定为优秀。

同时,张老师继续点击所述节点602,继续得到如图6E所示的公式显示结果,根据所述公式显示结果,很容易的判断出,当学生的平均成绩在85分以下时,继续“判断平均数是否小于60,如果小于,则连接文本同学A”和“不及格”;如果大于,则连接文本同学A”和“普通”。至此,已经可以得知,前任班主任将平均成绩在60分-85分的学生评定为普通,而将平均成绩在60分以下的学生评定为不及格。

显然,通过本发明的公式的树状显示方法可以很容易理解复杂的公式,相比与现有技术中线性显示的公式2,利用诸如图6F中显示的公式的树状显示结果,用户可以获得更好的使用体验。当然,在另一些实施例中,各父亲节点的显示内容可以是运算符的运算结果、运算结果的单位等等,还可以帮助用户在计算过程中了解每一步运算的运算结果和运算结果的单位,进而可以判断出运算过程是否有错误等。再或者,按照优先级顺序依次显示每个父亲节点的运算结果,直到最终的运算结果,可以帮助用户查看到整个运算流程。通常,所述表达式表示为一棵树后,可以在接收到用户信号或者自定策略将各级节点从上至下、从左到右依次展开,以符合用户的视觉习惯。

当然,图6A-图6F中只是通过一个例子来描述本发明,并不能代表本发明的整个方面,譬如,在另一个实施例中,前述公式1的树状显示结果如图7所示,其利用了电子表格应用程序中的单元格来显示所述公式1的树状显示结果。

显然,上述说明已经充分揭露了本发明的具体实施方式。需要指出的是,熟悉该领域的技术人员对本发明的具体实施方式所做的任何改动均不脱离本发明的权利要求书的范围。相应地,本发明的权利要求的范围也并不仅仅局限于所述具体实施方式。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号