首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处的字句写在答题纸的对应栏内。 【应用说明】 某应用程序用于监测某种设备的工作温度(20~200℃),其运行窗口中,包括一个温度计(矩形形状shpMeter)以及其中指示当前
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处的字句写在答题纸的对应栏内。 【应用说明】 某应用程序用于监测某种设备的工作温度(20~200℃),其运行窗口中,包括一个温度计(矩形形状shpMeter)以及其中指示当前
admin
2008-05-15
77
问题
阅读以下应用说明以及用Visual Basic编写的程序代码,将应填入(n)处的字句写在答题纸的对应栏内。
【应用说明】
某应用程序用于监测某种设备的工作温度(20~200℃),其运行窗口中,包括一个温度计(矩形形状shpMeter)以及其中指示当前设备温度的水银柱(矩形形状shpT),文字标签标记了温度刻度;另有一个图片框picCurve,用于动态描述检测到的温度曲线 (用户见到的曲线与水银柱等高变化);命令按钮“开始检测”(cmdStart)用于启动温度检测,命令按钮“暂停检测”(emdStop)用于暂停检测。
矩形形状shpT(水银柱)属性visible初始设置为不可见,属性Filltype设置为solid (实心),FillColor设置为红色;图片框picCurve的属性AutoRedraw设置为Tree 再创建一个定时器TimT,属性Enabled初始设置为False(不起作用),属性Interval(定时间隔)设置为500ms。
为模拟设备温度的检测,程序中利用了(0,1)之间均匀分布的伪随机数获得[20,200]之间的随机温度T。为了便于在图片框picCurve中绘制曲线,程序中对该图片框建立了坐标系统,左上角为原点(0,0),水平向右方向为X轴,垂直向下方向为Y轴,右下角坐标为(50,180)。为了便于观察记录的温度值,图片框中从上到下创建了5条水平线Ls(i),i=0,1,…,4,并在程序中按等间隔排列进行位置设置。程序中每隔半秒算出曲线点(x,y),其中x=0,1,2,…,再用线段连接各相邻曲线点形成温度曲线,如下所示。
【 Visual Basic程序代码 】
Dim (1) As Integer /*声明全局变量*/
Private Sub CmdStart_Click( )
TimT.Enabled = True
ShpT.Visible = True
End Sub
Private Sub CmdStop_Click( )
TimT.Enabled = False
End Sub
Private Sub Form Load( )
Dim i, H As Integer
PicCurve.Scale(0,0)-(50,180) ’设置图片框坐标系:左上角—右下角
H=30 ’H等于图片框高度的六分之一
For i=0 To 4 ’设置5条水平线Ls(i)的位置
Ls(i).X1=0 ’Ls(i)起点横坐标
Ls(i).n=n* (2) ’Ls(±)起点纵坐标
Ls(i).x2=50 ’Ls(i)终点横坐标
Ls(i).Y2=Ls(i).Y1 ’Ls(i)终点纵坐标
Ls(i).BorderColor=&HCOCOC0 ’设置水平线颜色
Next i
x=0 ’设置曲线坐标初值
End Sub
Private Sub timT_Timer()
Dim T,H As Integer ’T为即时温度,H为图片框中温度点显示高度
T=Int(Rnd*181)+20 ’模拟随机产生设备温度(20~200℃)
’按当前温度显示水银柱
H=ShpMeter.Height* (3) ’算出水银柱的高度
ShpT.Top=(4) -H ’设置水银柱顶部位置
ShpT.Height=H ’设置水银柱的高度
’绘制温度曲线
y= (5) ’算出曲线上当前点的纵坐标
If x=51 Then ’当超出图片框时
PicCurve.Cis ’清除图片框内以前画的曲线
x=0 ’设置重画曲线的初值
Elself x>0 Then ’除左边点外
PicCurve.Line (x-1,Lasty)-(x,y),vbRed ,由前1点到当前点画红色线段
End If
x=x+1 ’准备下一点坐标
Lasty=y ’保存当前坐标供下次使用
End Sub
选项
答案
(1)x,Lasty (2)(i+1),或其等价形式 (3)(T-20)/180,或其等价形式 (4)ShpMeter.Top+ShpMeter.Height (5)200-T
解析
本题是从实际工作岗位应用项目中抽象出来并加以简化的例子。
用随机数模拟实时检测数据是常用的方法。Rnd是由计算机产生的均匀分布在(0,1)区间内的伪随机数。每调用一次就会产生一个新的数。随机取若干个数,观察其分布,就会发现其在(0,1)中比较均匀分布这种特性(不会过于集中在某个小段)。从而, Rnd*181均匀分布于(0,181),取整数部分后,Int(Pnd*181”均匀分布于0,1,…,180之间。T=Int(Rnd*181)+20均匀分布于20,21,…,200之间,因此,程序中可以用T值来模拟实时检测到的设备温度。
屏幕上的温度计形状控件shpMeter是固定的,其高度由其Height属性决定 (shpMeter.Height),其顶部离屏幕上边的距离由其top属性决定(shpMeter.Top)。由于温
度计形状的属性FillStyle默认为透明,因此,在其中创建水银柱时便可见。
水银柱的底部应固定在温度计的底部,水银柱的高度应随温度T的变化而改变。开发时要求:尚未开始检测温度时,水银柱应不可见;启动检测后,当温度T=20时,水银柱的高度为0;当温度T=200时,水银柱的高度应等于温度计的高度;对于其他温度,水银柱的高度应有线性变化。水银柱形状shpT在屏幕上的位置取决于以下三个属性:
shpT.Top 顶部位置(随温度T的变化而变化)
shpT.Height 高度H(随温度T的变化而变化)
shp.Lefi 左边位置(固定不变)
水银柱的高度H应是温度T的线性函数,其端点值可以列表如下:
因此,按线性比例便有:(H-0)/(T-20)=(shpMeter.Height-0)/(200-20),
从而,H=ShpMeter.Height*(T-20)/180,所以(3)处应填入(T-20)/180。
水银柱的顶部离屏幕上边的距离应等于温度计离屏幕上边的距离加上水银柱顶部到温度计顶部的距离,而后者就是温度计的高度与水银柱的高度之差(如下图所示)。因此:
shpT.top=shpMeter.Top+shpMeter.Height-H
所以,(4)处应填入ShpMeter.Top+ShpMeter.Height。
图片框中定义的坐标系统与直观见到的屏幕情况不同,点坐标也不是像素值,如下所示。
在该坐标系统内,图片框上边与下边的距离为180,中间用5条水平线将其等分,各线间的距离H=30(注意两个过程中用同样的局部变量H表示不同的含义)。
最上面的第0线Ls(0)的起点应为(0,H),终点应为(50,H)。
最下面的第4线Ls(4)的起点应为(0,5H),终点应为(50,5H)。
因此,一般的Ls(i)线的起点应为(0,(i+1)H),终点应为(50,(i+1)H),从而(2)处应填入(i+1)。
图片框中的曲线点离框下边的高度(在坐标系统内计算)应等于温度值T,但它不是图片框中的纵坐标值。温度T与相应的曲线纵坐标是线性关系,其两端值如下;
当T=20时,水银柱高度为0,相应的曲线点应位于图片框下边,其纵坐标应是180;
当T=200时,水银柱最高,相应的曲线点应位于图片框上边,其纵坐标应是0。
因此,温度为T时,相应曲线点的纵坐标值应是200-T。所以(5)处应填入200-T。
由于曲线点高度与水银柱高度两端点值相同,且都是线性变化,所以,曲线点与水银柱必然同时等高变化。
按定时器TimT设置的定时时间间隔500ms,每隔半秒钟就得到一个温度T的值。设图片框中以x=1,2,…表示逐点记录温度的横坐标,则每个曲线点的坐标就是(x, 200-T)。在这些曲线点中,凡是与x相邻的两点都用线段连接起来,就形成了温度曲线。
设当前的曲线点为(x,y),前一曲线点的坐标为(Lastx,Lasty),则Lastx=x-1。
当x=0时,计算出的只有一个曲线点(0,y),还不能连线,所以应将其值y保存在 Lasty中,以便在下个时刻计算时,作为前一点的坐标。
当1≤x≤50时,应该用线段连接(Lastx,LastY)与(x,y)两点。
当x=51(超出图片框边界)时,应清除图片框中已绘制的曲线,再以x=0开始处理。
程序中的第一行用于声明全局变量,变量x已在两个过程模块中使用,应作为全局变量。在定时器定时触发的过程中,Lasty需要保存起来供下次执行过程时使用。在Visual Basic中,这个变量应作为静态变量或全局变量。本应用程序中,没有设置静态变量,所以Lasty应作为全局变量。从而,(1)处应填入x,Lasty。
转载请注明原文地址:https://kaotiyun.com/show/HsjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
在Excel2007中,设单元格A1、B1、C1、A2、B2、C2中的值分别为1、3、5、7、9、11,若在单元格D1中输入函数“=MIN(A1:C2)”,按回车键后,则D1单元格中的值为__________。
下列关于文件夹的叙述中,不正确的是______。
在Access中,如果想要查询所有姓名为2个汉字的学生记录,在准则中应输入______。
数据源有多种,从传感器、智能仪表自动发送过来的数据属于______。
Windows7文件夹采用___________目录结构
计算机维护的注意事项中不包括________。
在Excel2007中,设单元格A1中的值为一100,B1中的值为100,A2中的值为0,B2中的值为1,若在C1单元格中输入“=IF(A1+B1
在Excel2010中,C3:C7单元格中的值分别为10、OK、20、YES和48,在。D7单元格中输入函数“=COUNT(C3:C7)”,按回车键后,D7单元格中显示的值为________________。
某企业甲乙两个部门招聘职工中,男女应聘人数和录用人数情况如下表:从上表看出,各部门女性录用率都大于男性录用率。从该企业合计来看,()。
数据录入工作有两个指标:录入速度和错误率。一般而言,数据录入员在录入大批数据时,录入速度会(65),错误率会(66)。66
随机试题
天帝之季女,名曰瑶姬,未行而亡,封于巫山之阳。(《巫山巫峡》)季女:
StudentLoansFederalStudentAidisanofficeproviding(provide)studentloansforhighereducation.TheU.S.government
某一企业的员工比较涣散,上班迟到现象严重。针对这种现象,领导研究决定:员工上班迟到一次,扣发当月50%的奖金;迟到两次,扣罚当月全部奖金。自此规定出台之后,员工迟到现象基本消除。这是哪一种强化方式()。
甲花4万元收买被拐卖妇女周某做智障儿子的妻子,周某不从,伺机逃走。甲为避免人财两空,以3万元将周某出卖。(事实一)乙收买周某,欲与周某成为夫妻,周某不从,乙多次暴力强行与周某发生性关系。(事实二)不久,周某谎称怀孕要去医院检查,乙信以为
根据营业税改征增值税试点相关规定,纳税人融资性售后回租业务,应当按照()征收增值税。
dx
DrRichardBergland,abrainresearcherattheHarvardMedicalSchool,haswrittenapapersuggestingthathumanbrainisbasica
PoetryNowadays,weliterarycriticsaresaidtotalklittleaboutactualliterature.Today,Ireallywanttofocusonpoet
A—offerB—bargainC—sampleD—contractE—insuranceF—shipment
TheamountoffloatingplastictrappedinanorthAtlanticcurrentsystemhasn’tgotanybiggerin22years,despitemoreandmo
最新回复
(
0
)