算法设计与程序实现
判断车牌的单双号
(背景知识)
为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。(提示:(1)所有车牌号中都含有数字,并且车牌号的长度都是6;(2)以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。)
(1)输入:AD2367 | (2)输入:A8888A | (3)输入:A8963C |
输出:单号 | 输出:双号 | 输出:单号 |
(算法描述)
(1)自然语言
第1步:输入车牌号
第2步:取车牌号的最后一位x;
第3步:判断x是否为数字,如果是,转第4步;如果不是,则依次取得倒数第二、三……位判断,直到找到数字为止;
第4步:判断x 是奇数还是偶数,然后输出相应的结果。
(2)流程图

请根据上述算法描述补全代码
Dim n As Integer
Dim s As String ‘定义s 为字符串类型
Dim x As String
s=InputBox(“s=”,s) ‘将输入的车牌号赋值给s
n=6 ‘车牌号的长度为6
x=Mid(s,n,1) ‘取车牌号s的第n位
Do While x<”0” Or x>”9” ‘x不是数字字符,则取x的前一位
①
x=Mid(s,n,1) ‘取车牌号s的第n位
Loop
If ② then
Print “双号”
Else
Print “单号”
End If
(提示:Mid(s,m,n)的功能:从字符串s的第m位开始,截取长度为n的子串。例如:Mid(“A8963C”,5,1)的返回值是“3”。)
1. 根据题意,程序中空白①处应填写:_______________________________ 。
2. 根据题意,程序中空白②处应填写:______(填写字母:A/B/C/D)。
A、Val(x)\ 2= 0 B、Val(x)Mod 2 = 1 C、Val(x) Mod 2=0 D、Val(x) Mod 2 <> 0