测评程序的生成方法和生成装置与流程

文档序号:16683587发布日期:2019-01-19 00:44阅读:318来源:国知局
技术简介:
本专利针对传统测评程序生成依赖大量代码输入、效率低且缺乏沉浸感的问题,提出通过虚拟现实环境捕捉用户动作并转化为文本信息,由服务器从程序语句库中匹配生成测评程序的解决方案。该方法结合VR交互与智能查询,显著提升生成效率与编程教学的沉浸体验。
关键词:虚拟现实测评,编程教育交互

本发明涉及编程技术领域,特别是涉及一种测评程序的生成方法、测评程序的生成装置、计算机设备和计算机可读存储介质。



背景技术:

随着科技的进步和信息处理技术的发展,在日常生活中可以通过编写计算机程序让计算机处理相关的数据业务,以提高信息处理效率。在计算机程序编写的过程当中,为保证程序能够顺利开发,需要对编写的计算机程序进行测评,其中,onlinejudge系统(简称oj系统,即在线测评系统)是一个在线的判题系统,用户向oj系统提交通过c、c++或java等代码,oj系统在后台验证代码的准确性,可见对编写的计算机程序进行测评是程序编写过程中的关键环节。

在传统技术中,用户通常都是直接向oj系统输入代码文本,oj系统后台在沙箱中对代码进行编译和运行,运行读取输入数据,比较输出数据,进而评测程序是否正确。然而,代码文本的数据量通常比较大,这种技术需要用户输入大量的代码文本才能生成相应的测评程序从而让oj系统对该测评程序进行测评,导致测评程序的生成效率低,还降低了对程序进行测评的效率。



技术实现要素:

基于此,有必要针对传统技术测评程序的生成效率低的技术问题,提供一种测评程序的生成方法、测评程序的生成装置、计算机设备和计算机可读存储介质。

一种测评程序的生成方法,包括步骤:

获取用户在虚拟现实环境中输入的动作信息;将所述动作信息转化为相应的文本信息;

将所述文本信息发送至服务器,用于触发所述服务器从程序语句库中查询与所述文本信息相匹配的程序语句;

接收所述服务器返回的所述程序语句;

根据所述程序语句生成测评程序,用于发送至所述服务器进行测评。

在一个实施例中,所述接收所述服务器返回的所述程序语句的步骤包括:

接收所述服务器以多个选项的形式反馈的多个程序语句;其中,各个所述选项分别对应各个所述程序语句;所述多个程序语句为所述服务器从所述文本信息中提取关键字,并根据该关键字在所述程序语句库中进行检索得到的与所述关键字相对应的多个程序语句。

在一个实施例中,所述根据所述程序语句生成测评程序的步骤包括:

在所述虚拟现实环境中展示所述多个选项;根据所述用户在所述虚拟现实环境中输入的手势信息确定所述用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句;将所述目标语句转化为相应的测评程序。

在一个实施例中,还包括步骤:

将所述测评程序发送至所述服务器,用于触发所述服务器将所述测评程序提交至测评服务器进行程序测评。

在一个实施例中,还提供一种测评程序的生成方法,包括步骤:

接收客户端发送的文本信息;其中,所述文本信息为所述客户端将用户在虚拟现实环境中输入的动作信息进行转化得到的文本信息;

根据所述文本信息从程序语句库中查询与该文本信息相匹配的程序语句;

将所述程序语句发送至所述客户端,用于触发所述客户端根据所述程序语句生成测评程序。

在一个实施例中,所述根据所述文本信息从程序语句库中查询与该文本信息相匹配的程序语句的步骤包括:

从所述文本信息中提取关键字;根据所述关键字在所述程序语句库中进行检索,得到与所述关键字相对应的多个程序语句。

在一个实施例中,所述将所述程序语句发送至所述客户端,用于触发所述客户端根据所述程序语句生成测评程序的步骤包括:

将所述多个程序语句以多个选项的形式发送至所述客户端,用于触发所述客户端在所述虚拟现实环境中展示所述多个选项,根据所述用户在所述虚拟现实环境中输入的手势信息确定所述用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句,将与该选项相匹配的程序语句设为目标语句并转化为相应的测评程序;其中,各个所述选项分别对应各个所述程序语句。

在一个实施例中,还包括步骤:

接收所述客户端发送的所述测评程序;将所述测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种测评程序的生成装置,包括:

信息获取模块,用于获取用户在虚拟现实环境中输入的动作信息;将所述动作信息转化为相应的文本信息;

信息发送模块,用于将所述文本信息发送至服务器,用于触发所述服务器从程序语句库中查询与所述文本信息相匹配的程序语句;

语句接收模块,用于接收所述服务器返回的所述程序语句;

程序生成模块,用于根据所述程序语句生成测评程序,用于发送至所述服务器进行测评。

在一个实施例中,还提供一种测评程序的生成装置,包括:

信息接收模块,用于接收客户端发送的文本信息;其中,所述文本信息为所述客户端将用户在虚拟现实环境中输入的动作信息进行转化得到的文本信息;

语句查询模块,用于根据所述文本信息从程序语句库中查询与该文本信息相匹配的程序语句;

语句发送模块,用于将所述程序语句发送至所述客户端,用于触发所述客户端根据所述程序语句生成测评程序。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上任一项实施例所述的测评程序的生成方法的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项实施例所述的测评程序的生成方法的步骤。

上述测评程序的生成方法、装置、计算机设备和计算机可读存储介质,客户端获取用户在虚拟现实环境中输入的动作信息,然后将该动作信息转化为相应的文本信息,并将该文本信息发送给服务器,使得该服务器从程序语句库中查询与该文本信息相匹配的程序语句,然后服务器将该程序语句返回给客户端,客户端在接收到服务器返回的程序语句后,根据该程序语句生成相应的测评程序,使得该测评程序可以用于发送到服务器进行测评,克服了传统技术中用户需要输入大量的代码文本才能得到相应测评程序的问题,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

附图说明

图1为一个实施例中测评程序的生成方法的应用环境图;

图2为一个实施例中测评程序的生成方法的流程示意图;

图3为另一个实施例中测评程序的生成方法的流程示意图;

图4为一个实施例中测评程序的生成装置的结构框图;

图5为又一个实施例中测评程序的生成方法的流程示意图;

图6为再一个实施例中测评程序的生成方法的流程示意图;

图7为另一个实施例中测评程序的生成装置的结构框图;

图8为一个实施例中测评程序的生成方法的时序图;

图9为一个实施例中计算机设备的内部结构图;

图10为另一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明提供的测评程序的生成方法,可以应用于如图1所示的应用环境中,图1为一个实施例中测评程序的生成方法的应用环境图,其中,终端100通过网络与服务器200通过网络进行通信,终端100可以通过本地配置的虚拟现实设备300创建虚拟现实环境,可以通过该虚拟现实设备300配置的体感装置获取用户在该虚拟现实环境中输入的动作信息,终端100可以将该动作信息转化为相应的文本信息通过互联网发送给服务器200,使得该服务器200查询与该文本信息相匹配的程序语句,从而返回给终端100生成相应的测评程序。其中,终端100可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器200可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一个实施例中,提供了一种测评程序的生成方法,参考图2,图2为一个实施例中测评程序的生成方法的流程示意图,以该方法应用于图1中的终端100为例进行说明,该测评程序的生成方法可以包括以下步骤:

步骤s101,获取用户在虚拟现实环境中输入的动作信息;将动作信息转化为相应的文本信息。

本步骤中,终端100可以通过本地配置的虚拟现实设备300创建虚拟现实环境,用户可以通过该虚拟现实设备300配置的体感设备在该虚拟现实环境中输入相应的动作信息,终端100可以通过客户端获取用户在虚拟现实环境中输入的动作信息,并将该动作信息转化为相应的文本信息。

具体来说,虚拟现实环境通常呈现有多种的场景元素,用户可以通过在虚拟现实环境中输入相应的动作信息,以表示对各种场景元素进行选择,例如虚拟现实环境中可以呈现如“求和”、“求积”的文字或动画等元素,用户可以挥动体感设备向虚拟现实设备300输入相应的动作信息以对该“求和”元素进行选择,终端100可以将该动作信息转化成文字“求和”。

步骤s102,将文本信息发送至服务器,用于触发服务器从程序语句库中查询与文本信息相匹配的程序语句。

本步骤主要是终端100将文本信息发送给服务器200使得该服务器查询相应的程序语句。其中,服务器200配置有程序语句库,该程序语句库是指用于存储多个程序语句的数据库,该数据库可以基于在线测评系统(oj,onlinejudge)的语料库或数据库进行构建,存储的程序语句包括但不限于c、c++或java等多种编程语言的相关程序语句。

服务器200可以根据文本信息对程序语句库进行查询、检索等操作,当终端100发送文本信息到服务器200时,该文本信息可以触发服务器200从程序语句库中检索出与该文本信息相匹配的程序语句。例如,终端100向服务器200发送的文本信息为“求和”,则服务器200可以从程序语句库中检索出基于多种编程语言的求和语句。

步骤s103,接收服务器返回的程序语句。

服务器200可以在查询到与文本信息相匹配的程序语句后将该程序语句发送给终端100。

步骤s104,根据程序语句生成测评程序,用于发送至服务器进行测评。

本步骤中,终端100在接收到服务器200返回的程序语句后,可以将程序语句转化为相应的测评程序,以便提交至服务器200对该测评程序进行评测。其中,用户在录入描述需要进行测评的相关程序的语音信息时可以将测评程序进行分段录入,所以终端100接收的程序语句的数量可以是多个,本步骤可以将各程序语句进行组合,从而转换成相应的测评程序。

上述测评程序的生成方法,客户端获取用户在虚拟现实环境中输入的动作信息,然后将该动作信息转化为相应的文本信息,并将该文本信息发送给服务器,使得该服务器从程序语句库中查询与该文本信息相匹配的程序语句,然后服务器将该程序语句返回给客户端,客户端在接收到服务器返回的程序语句后,根据该程序语句生成相应的测评程序,使得该测评程序可以用于发送到服务器进行测评,克服了传统技术中用户需要输入大量的代码文本才能得到相应测评程序的问题,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

在一个实施例中,接收服务器返回的程序语句的步骤可以包括:

接收服务器以多个选项的形式反馈的多个程序语句。

在本实施例中,终端100向服务器200发送文本信息后,服务器200可以从该文本信息中提取关键字,并根据该关键字在程序语句库中检索出与该关键字相匹配的程序语句。

其中,从文本信息中提取的关键字可以是描述需要进行测评的相关程序的主要特征的文字,例如文本信息为“对x进行求和”,则关键字可以对应为“x、求和”,检索出的程序语句可以是对x进行求和的相关程序语句。由于程序语句库中存储有包括c、c++或java等多种编程语言的相关程序语句,所以服务器200检索得到的程序语句可以包括分别与多种编程语言相对应的多个程序语句。

服务器200在检索得到多个程序语句后,可以将程序语句以多个选项的形式反馈给终端100,各选项分别对应于各个程序语句,终端100可以将各选项及其对应的程序语句在虚拟现实环境中进行展示,例如将各个选项以文字或动画的形式显示在虚拟现实环境中,同时还可以语音播放设备对各个选项及其对应的程序语句进行播放。

本实施例通过终端发送的文本信息触发服务器根据该文本信息的关键字从程序语句库中匹配出多个程序语句,由于将文本信息可能携带了与程序语句无关的背景噪声从而影响程序语句的匹配度,这种方式可以避免服务器在将整段文本信息进行程序语句匹配时导致匹配度低的问题,使得服务器从程序语句库中检索出将与关键字匹配的多个程序语句,提高文本信息与程序语句匹配程度,而且客户端接收服务器以多个选项的形式反馈的多个程序语句还让用户能够在多个选项中选取需要测评的程序语句,在保证匹配度的情况下还能够提高获取的程序语句的准确性,还使得获取测评程度的灵活度更高。

在一个实施例中,进一步的,根据程序语句生成测评程序的步骤可以包括:

在虚拟现实环境中展示多个选项;根据用户在虚拟现实环境中输入的手势信息确定用户在多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句;将目标语句转化为相应的测评程序。

本实施例中,终端100可以将服务器200返回的多个选项及其对应的程序语句通过虚拟现实设备300创建的虚拟现实环境进行展示,同时还可以通过语音播放设备进行播放,供用户从显示的各个选项中进行选择,例如可以以选择题的形式提供给用户进行选择,可以获取用户在虚拟现实中输入的手势信息确定用户在各选项中选择的选项,手势可以包括横向滑动、纵向滑动或画圈等手势。终端100可以通过用户的手势信息确定该用户选择的选项,并将与该选项匹配的程序语句设为目标语句,该目标语句即为用户选择的程序语句,然后将该目标语句转化为相应的测评程序。本实施例以多个选项的形式将服务器检索的多个程序语句提供给用户进行选择,能够准确地生成需要进行程序测评的程序语句,有利于进一步提高对程序进行测评的准确性和效率。

在一个实施例中,还可以包括如下步骤:

将测评程序发送至服务器,用于触发服务器将测评程序提交至测评服务器进行程序测评。

本实施例主要是终端100可以将生成的测评程序发送给服务器200,使得该服务器200将该测评程序提交到测评服务器进行程序测评处理,该测评服务器可以是在线测评系统(oj,onlinejudge)的服务器,测评服务器可以通过后台将该测评程序的代码在沙箱中编译和运行,运行读取输入数据,比较输出数据,进而评测程序是否正确,终端100还可以通过服务器200获取测评服务器反馈的测评结果。本实施例通过将测评程序提交到测评服务器有利于对该测评程序进行专业、有效地评测。

在一个实施例中,还提供一种测评程序的生成方法,参考图3,图3为另一个实施例中测评程序的生成方法的流程示意图,以该方法应用于图1中的终端100为例进行说明,该测评程序的生成方法可以包括如下步骤:

s201,获取用户在虚拟现实环境中输入的动作信息;将动作信息转化为相应的文本信息。

本步骤中,终端100可以通过本地配置的虚拟现实设备300采集用户在该虚拟现实设备300创建的虚拟现实环境中输入的动作信息,并将该动作信息转化为相应的文本信息。

s202,将文本信息发送至服务器,用于触发服务器从程序语句库中查询与文本信息相匹配的程序语句。

本步骤主要是终端100将文本信息通过网络发送给服务器200,使得该服务器200可以根据该文本信息从程序语句库中查询匹配的多个程序语句。

s203,接收服务器以多个选项的形式反馈的多个程序语句。

其中,服务器200可以将查询到的多个程序语句以选择题的形式发送给终端100,使得终端100将各个选项及其对应的多个程序语句反馈给用户。

s204,在虚拟现实环境中展示多个选项。

其中,终端100接收到服务器200返回的多个选项及其对应的多个程序语句后,可以将各个选项及其对应的程序语句通过虚拟现实设备300创建的虚拟现实环境进行展示,同时还可以通过语音播放设备进行播放,供用户从显示的各个选项中进行选择。

s205,根据用户在虚拟现实环境中输入的手势信息确定用户在多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句。

终端100可以将多个程序语句以选择题的形式提供给用户进行选择,终端100可以获取用户在虚拟现实中输入的手势信息确定用户在各选项中选择的选项,手势可以包括横向滑动、纵向滑动或画圈等手势。终端100可以通过用户的手势信息确定该用户选择的选项,并将与该选项匹配的程序语句设为目标语句,该目标语句即为用户选择的程序语句。

s206,将目标语句转化为相应的测评程序。

终端100将用户选择的语句转化为相应的测评程序。

s207,将测评程序发送至所述服务器,用于触发服务器将测评程序提交至测评服务器进行程序测评

其中,终端100将用户确认的测评程序发送给服务器200,使得该服务器200将该测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种测评程序的生成装置,如图4所示,图4为一个实施例中测评程序的生成装置的结构框图,该测评程序的生成装置可以包括:

信息获取模块101,用于获取用户在虚拟现实环境中输入的动作信息;将动作信息转化为相应的文本信息;

信息发送模块102,用于将文本信息发送至服务器,用于触发服务器从程序语句库中查询与文本信息相匹配的程序语句;

语句接收模块103,用于接收服务器返回的程序语句;

程序生成模块104,用于根据程序语句生成测评程序,用于发送至服务器进行测评。

在一个实施例中,语句接收模块103进一步用于:

接收所述服务器以多个选项的形式反馈的多个程序语句;其中,各个所述选项分别对应各个所述程序语句;所述多个程序语句为所述服务器从所述文本信息中提取关键字,并根据该关键字在所述程序语句库中进行检索得到的与所述关键字相对应的多个程序语句。

在一个实施例中,程序生成模块104进一步用于:

在虚拟现实环境中展示多个选项;根据用户在所述虚拟现实环境中输入的手势信息确定用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句;将目标语句转化为相应的测评程序。

在一个实施例中,还可以包括:

第一提交模块,用于将所述测评程序发送至所述服务器,用于触发所述服务器将所述测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种测评程序的生成方法,参考图5,图5为又一个实施例中测评程序的生成方法的流程示意图,以该方法应用于图1中的服务器200为例进行说明,该测评程序的生成方法可以包括以下步骤:

步骤s401,接收客户端发送的文本信息。

本步骤中,服务器200可以通过终端100接收客户端发送的文本信息,其中,文本信息为终端100上的客户端将用户在虚拟现实环境中输入的动作信息进行转化得到的文本信息;终端100可以通过本地配置的虚拟现实设备300创建虚拟现实环境,用户可以通过该虚拟现实设备300配置的体感设备在该虚拟现实环境中输入相应的动作信息,终端100可以通过客户端获取用户在虚拟现实环境中输入的动作信息,并将该动作信息转化为相应的文本信息,并通过互联网将该文本信息发送给服务器200。

具体来说,虚拟现实环境通常呈现有多种的场景元素,用户可以通过在虚拟现实环境中输入相应的动作信息,以表示对各种场景元素进行选择,例如虚拟现实环境中可以呈现如“求和”、“求积”的文字或动画等元素,用户可以挥动体感设备向虚拟现实设备300输入相应的动作信息以对该“求和”元素进行选择,终端100可以将该动作信息转化成文字“求和”并发送给服务器200。

步骤s402,根据文本信息从程序语句库中查询与该文本信息相匹配的程序语句。

本步骤主要是服务器200接收终端100发送的文本信息,并在程序语句库中查询相应的程序语句。其中,服务器200配置有程序语句库,该程序语句库是指用于存储多个程序语句的数据库,该数据库可以基于在线测评系统(oj,onlinejudge)的语料库或数据库进行构建,存储的程序语句包括但不限于c、c++或java等多种编程语言的相关程序语句。

服务器200可以根据文本信息对程序语句库进行查询、检索等操作,当终端100发送文本信息到服务器200时,该文本信息可以触发服务器200从程序语句库中检索出与该文本信息相匹配的程序语句。例如,终端100向服务器200发送的文本信息为“求和”,则服务器200可以从程序语句库中检索出基于多种编程语言的求和语句。

步骤s403,将程序语句发送至客户端,用于触发客户端根据程序语句生成测评程序。

服务器200可以在查询到与文本信息相匹配的程序语句后将该程序语句发送给终端100,使得终端100在接收到服务器200返回的程序语句后,可以在客户端中将程序语句转化为相应的测评程序,以便提交至服务器200对该测评程序进行评测。其中,用户在录入描述需要进行测评的相关程序的语音信息时可以将测评程序进行分段录入,所以终端100接收的程序语句的数量可以是多个,本步骤可以将各程序语句进行组合,从而转换成相应的测评程序。

上述测评程序的生成方法,客户端获取用户在虚拟现实环境中输入的动作信息,然后将该动作信息转化为相应的文本信息,并将该文本信息发送给服务器,使得该服务器从程序语句库中查询与该文本信息相匹配的程序语句,然后服务器将该程序语句返回给客户端,客户端在接收到服务器返回的程序语句后,根据该程序语句生成相应的测评程序,使得该测评程序可以用于发送到服务器进行测评,克服了传统技术中用户需要输入大量的代码文本才能得到相应测评程序的问题,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

在一个实施例中,根据文本信息从程序语句库中查询与该文本信息相匹配的程序语句的步骤可以包括:

从文本信息中提取关键字;根据关键字在程序语句库中进行检索,得到与关键字相对应的多个程序语句。

在本实施例中,终端100向服务器200发送文本信息后,服务器200可以从该文本信息中提取关键字,并根据该关键字在程序语句库中检索出与该关键字相匹配的程序语句。

其中,从文本信息中提取的关键字可以是描述需要进行测评的相关程序的主要特征的文字,例如文本信息为“对x进行求和”,则关键字可以对应为“x、求和”,检索出的程序语句可以是对x进行求和的相关程序语句。由于程序语句库中存储有包括c、c++或java等多种编程语言的相关程序语句,所以服务器200检索得到的程序语句可以包括分别与多种编程语言相对应的多个程序语句。在服务器200检索得到多个程序语句后,可以将程序语句以多个选项的形式反馈给终端100,各选项分别对应于各个程序语句,终端100可以将各选项及其对应的程序语句通过显示设备进行展示,也可以语音播放设备进行播放。

本实施例通过终端发送的文本信息触发服务器根据该文本信息的关键字从程序语句库中匹配出多个程序语句,由于将文本信息可能携带了与程序语句无关的背景噪声从而影响程序语句的匹配度,这种方式可以避免服务器在将整段文本信息进行程序语句匹配时导致匹配度低的问题,使得服务器从程序语句库中检索出将与关键字匹配的多个程序语句,提高文本信息与程序语句匹配程度,而且客户端接收服务器以多个选项的形式反馈的多个程序语句还能够让用户在多个选项中选取需要测评的程序语句,在保证匹配度的情况下还能够提高获取的程序语句的准确性,还使得获取测评程度的灵活度更高。

在一个实施例中,进一步的,将程序语句发送至客户端,用于触发客户端根据程序语句生成测评程序的步骤可以包括:

将多个程序语句以多个选项的形式发送至客户端,用于触发客户端在虚拟现实环境中展示多个选项,根据用户在虚拟现实环境中输入的手势信息确定用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句,将与该选项相匹配的程序语句设为目标语句并转化为相应的测评程序;其中,各个选项分别对应各个程序语句。

本实施例中,服务器200在检索得到多个程序语句后,可以将程序语句以多个选项的形式反馈给终端100的客户端,各选项分别对应于各个程序语句,终端100可以将服务器200返回的多个选项及其对应的程序语句通过虚拟现实设备300创建的虚拟现实环境进行展示,同时还可以通过语音播放设备进行播放,供用户从显示的各个选项中进行选择,例如可以以选择题的形式提供给用户进行选择,可以获取用户在虚拟现实中输入的手势信息确定用户在各选项中选择的选项,手势可以包括横向滑动、纵向滑动或画圈等手势。终端100可以通过用户的手势信息确定该用户选择的选项,并将与该选项匹配的程序语句设为目标语句,该目标语句即为用户选择的程序语句,然后将该目标语句转化为相应的测评程序。本实施例以多个选项的形式将服务器检索的多个程序语句提供给用户进行选择,能够准确地生成需要进行程序测评的程序语句,有利于进一步提高对程序进行测评的准确性和效率。

在一个实施例中,还可以包括如下步骤:

接收客户端发送的测评程序;将测评程序提交至测评服务器进行程序测评。

本实施例主要是服务器200可以接收终端100生成的测评程序,并将该测评程序提交到测评服务器进行程序测评处理,该测评服务器可以是在线测评系统(oj系统,onlinejudge系统)的服务器,测评服务器可以通过后台将该测评程序的代码在沙箱中编译和运行,运行读取输入数据,比较输出数据,进而评测程序是否正确,终端100还可以通过服务器200获取测评服务器反馈的测评结果。本实施例通过将测评程序提交到测评服务器有利于对该测评程序进行专业、有效地评测。

在一个实施例中,还提供一种测评程序的生成方法,参考图6,图6为再一个实施例中测评程序的生成方法的流程示意图,以该方法应用于图1中的服务器200为例进行说明,该测评程序的生成方法可以包括如下步骤:

步骤s501,接收客户端发送的文本信息。

本步骤中,服务器200可以通过终端100接收客户端发送的文本信息,该文本信息为终端100上的客户端将用户在虚拟现实环境中输入的动作信息进行转化得到的文本信息。

步骤s502,从文本信息中提取关键字。

其中,服务器200可以从终端100发送的文本信息中提取关键字。

步骤s503,根据关键字在程序语句库中进行检索,得到与关键字相对应的多个程序语句。

服务器200可以根据提取的关键字从程序语句库中检索出与关键字相对应的多个程序语句。

步骤s504,将多个程序语句以多个选项的形式发送至客户端。

其中,服务器200可以将多个程序语句以选择题选项的形式将与各个选项相对应的多个程序语句通过终端100反馈至的客户端,使得用户可以从多个选项中进行选择,终端100确定用户选择的选项,并将与该选项对应的程序语句设为目标语句,即用户选择的程序语句,以及将用户选择的语句转化为相应的测评程序。

步骤s505,接收客户端发送的测评程序。

其中,终端100可以将用户确认的测评程序发送给服务器200。

步骤s506,将测评程序提交至测评服务器进行程序测评。

服务器200将该测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种测评程序的生成装置,如图7所示,图7为另一个实施例中测评程序的生成装置的结构框图,该测评程序的生成装置可以包括:

信息接收模块401,用于接收客户端发送的文本信息;其中,文本信息为客户端将用户在虚拟现实环境中输入的动作信息进行转化得到的文本信息;

语句查询模块402,用于根据文本信息从程序语句库中查询与该文本信息相匹配的程序语句;

语句发送模块403,用于将程序语句发送至客户端,用于触发客户端根据程序语句生成测评程序。

在一个实施例中,语句查询模块402进一步用于:

从文本信息中提取关键字;根据关键字在程序语句库中进行检索,得到与关键字相对应的多个程序语句。

在一个实施例中,语句发送模块403进一步用于:

将多个程序语句以多个选项的形式发送至客户端,用于触发客户端在虚拟现实环境中展示多个选项,根据用户在虚拟现实环境中输入的手势信息确定用户在多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句,将与该选项相匹配的程序语句设为目标语句并转化为相应的测评程序;其中,各个选项分别对应各个程序语句。

在一个实施例中,还可以包括:

第二测评模块,用于接收客户端发送的测评程序;将测评程序提交至测评服务器进行程序测评。

本发明的测评程序的生成装置与本发明的测评程序的生成方法一一对应,关于测评程序的生成装置的具体限定可以参见上文中对于测评程序的生成方法的限定,在上述测评程序的生成方法的实施例阐述的技术特征及其有益效果均适用于测评程序的生成装置的实施例中,在此不再赘述。上述测评程序的生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

为了更清晰阐明本发明的技术方案,在一个实施例中,还提供一种测评程序的生成方法,参考图8,图8为一个实施例中测评程序的生成方法的时序图,以该方法应用于如图1所示的应用环境进行说明,包括终端100和服务器200,该测评程序的生成方法可以包括如下步骤:

步骤s1001,终端100通过本地配置的虚拟现实设备300获取用户在该虚拟现实设备300创建的虚拟现实环境中输入的动作信息,并将该动作信息转化为文本信息。

步骤s1002,终端100将文字信息通过网络发送给服务器200。

步骤s1003,服务器200在接收到文字信息后,可以对文字信息进行过滤,如果发现文字信息中有对应的关键字,则提取该关键字,并根据该关键字在程序语句库中检索对应的程序语句,程序语句的数量可以为多个。

步骤s1004,服务器200将多个程序语句通过选择题的多个选项的形式反馈给终端100。

步骤s1005,终端100获取用户在各个选项中选择的选项,确定与该选项对应的程序语句作为目标语句,将该目标语句转化为测评程序。

步骤s1006,终端100将该测评程序发送给服务器200进行程序测评,服务器200在接收到测评程序后,可以将该测评程序提交至在线测评系统(oj系统,onlinejudge系统)进行测评。

上述测评程序的生成方法,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是手机等终端设备,其内部结构图可以如图9所示,图9为一个实施例中计算机设备的内部结构图。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种测评程序的生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示,图10为另一个实施例中计算机设备的内部结构图。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储测评程序的生成方法的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种测评程序的生成方法。

本领域技术人员可以理解,图9和图10中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

获取用户在虚拟现实环境中输入的动作信息;将动作信息转化为相应的文本信息;将文本信息发送至服务器,用于触发服务器从程序语句库中查询与文本信息相匹配的程序语句;接收服务器返回的程序语句;根据程序语句生成测评程序,用于发送至服务器进行测评。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

接收服务器以多个选项的形式反馈的多个程序语句。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

在虚拟现实环境中展示多个选项;根据用户在虚拟现实环境中输入的手势信息确定用户在多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句;将目标语句转化为相应的测评程序。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将测评程序发送至服务器,用于触发服务器将测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:

接收客户端发送的文本信息;根据文本信息从程序语句库中查询与该文本信息相匹配的程序语句;将程序语句发送至客户端,用于触发客户端根据程序语句生成测评程序。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

从文本信息中提取关键字;根据关键字在程序语句库中进行检索,得到与关键字相对应的多个程序语句。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

将多个程序语句以多个选项的形式发送至客户端,用于触发客户端在虚拟现实环境中展示多个选项,根据用户在虚拟现实环境中输入的手势信息确定用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句,将与该选项相匹配的程序语句设为目标语句并转化为相应的测评程序;其中,各个选项分别对应各个程序语句。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:

接收客户端发送的测评程序;将测评程序提交至测评服务器进行程序测评。

上述计算机设备,通过所述处理器上运行的计算机程序,生成相应的测评程序,使得该测评程序可以用于发送到服务器进行测评,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

本领域普通技术人员可以理解实现如上任一项实施例所述的测评程序的生成方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

据此,在一个实施例中提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

获取用户在虚拟现实环境中输入的动作信息;将动作信息转化为相应的文本信息;将文本信息发送至服务器,用于触发服务器从程序语句库中查询与文本信息相匹配的程序语句;接收服务器返回的程序语句;根据程序语句生成测评程序,用于发送至服务器进行测评。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

接收服务器以多个选项的形式反馈的多个程序语句。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

在虚拟现实环境中展示多个选项;根据用户在虚拟现实环境中输入的手势信息确定用户在多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句;将目标语句转化为相应的测评程序。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将测评程序发送至服务器,用于触发服务器将测评程序提交至测评服务器进行程序测评。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

接收客户端发送的文本信息;根据文本信息从程序语句库中查询与该文本信息相匹配的程序语句;将程序语句发送至客户端,用于触发客户端根据程序语句生成测评程序。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

从文本信息中提取关键字;根据关键字在程序语句库中进行检索,得到与关键字相对应的多个程序语句。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

将多个程序语句以多个选项的形式发送至客户端,用于触发客户端在虚拟现实环境中展示多个选项,根据用户在虚拟现实环境中输入的手势信息确定用户在所述多个选项中选择的选项,并将与该选项相匹配的程序语句设为目标语句,将与该选项相匹配的程序语句设为目标语句并转化为相应的测评程序;其中,各个选项分别对应各个程序语句。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:

接收客户端发送的测评程序;将测评程序提交至测评服务器进行程序测评。

上述计算机可读存储介质,通过其存储的计算机程序,生成相应的测评程序,使得该测评程序可以用于发送到服务器进行测评,通过用户在虚拟现实环境中进行动作交互结合服务器在程序语句库中查询相应程序语句的形式实现测评程序的录入,提高测评程序的生成效率,还有利于提高测评程序的测评效率,特别是在编程教育的过程当中,通过虚拟现实环境录入测评程序的形式能够有效提高教学过程中的沉浸感,提高程序编写的质量。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 留言:0条
  • 还没有人留言评论。精彩留言会获得点赞!