8314829西
8322581安
8315900市
8321273第
8320990二
8313898医
8313402院8314829西
8322581安
8315900市
8321273第
8314871五
8313898医
8313402院8316162陕
8314832西
8321268地
8318688矿
8313887医
8313389院原样如下,数字一调入程序里就成()里面的名字了....8314829832258183159008321273832099083138988313402(西安市第二医院)
8314829832258183159008321273831487183138988313402(西安市第五医院)
831616283148328321268831868883138878313389(陕西地矿医院)
8322581安
8315900市
8321273第
8320990二
8313898医
8313402院8314829西
8322581安
8315900市
8321273第
8314871五
8313898医
8313402院8316162陕
8314832西
8321268地
8318688矿
8313887医
8313389院原样如下,数字一调入程序里就成()里面的名字了....8314829832258183159008321273832099083138988313402(西安市第二医院)
8314829832258183159008321273831487183138988313402(西安市第五医院)
831616283148328321268831868883138878313389(陕西地矿医院)
asc(asc(asc("西"))) 得到 一个数
与 asc(8314829) 得到的数 相差4
而且都得到相同的数
请说细点:_)
8321273第
8321268地
只相差5,而两个字的发音一样:
第:“di”
地:“di”
或许在这方面考虑一下。
果真历害,,我当时没注意:
因为第一二组的“医院”两字编码一样:
8313898医
8313402院
但第三组“医院”两字的编码却是:
8313887医
8313389院
而第三组与第一二组不同的是医院两字的位置,第一二组都是第六、七个字,但第三组是第五、六个字。我再好好想想,,,谢谢大家了,一起帮忙想想。
输入法方面我看想了,可是就是找不出和这些编码相似的东西
帮帮忙,一起想想
1、取二个字节内码(汉字二个字节内码),然后高位的低位交换,如:西:F7CE --> CEF7
2、再用 7FAEC4 减去上步所得到的值 7FAEC4 - CEF7 = 7EDFCD (十进制为8314829)
3、用i代表双字节的起始位移(字节为单位),S代表上面所得到的值,R代表最终值,则R=S+f((i+1)/2) 其中 f(x)=f(x-1)+2*x-1
VB的加解密代码如下:Private Sub Command1_Click()
Dim strCode As String
strCode = EnCodeFun("西安市第二医院")
MsgBox strCode
strCode = UnCodeFun(strCode)
MsgBox strCode
End Sub
Function EnCodeFun(strCode As String) As String
Dim strTemp As String
Dim strCh As String
Dim nGet As Integer
Dim S As Long
Dim R As Long
Dim lMaxInt As Long
Dim i As IntegerstrTemp = strCode
lMaxInt = &HFFFF&
i = 0
Do While Len(strTemp) > 0
i = i + 1
strCh = Left(strTemp, 1)
strTemp = Right(strTemp, Len(strTemp) - 1)
nGet = Asc(strCh)
S = &H7FAEC4 - lMaxInt - nGet - 1
R = S + f(i)
EnCodeFun = EnCodeFun & Right(Str(R), Len(Str(R)) - 1)
Loop
End Function
Function UnCodeFun(strCode As String) As String
Dim strTemp As String
Dim strCh As String
Dim nGet As Integer
Dim S As Long
Dim R As Long
Dim lMaxInt As Long
Dim i As IntegerstrTemp = strCode
lMaxInt = &HFFFF&
i = 0
Do While Len(strTemp) > 0
i = i + 1
strCh = Left(strTemp, 7)
strTemp = Right(strTemp, Len(strTemp) - 7)
S = Val(strCh) - f(i)
nGet = &H7FAEC4 - lMaxInt - S - 1
UnCodeFun = UnCodeFun & Chr(nGet)
LoopEnd Function
Function f(x As Integer) As Integer
If x > 0 Then
If x = 1 Then
f = 0
Else
f = f(x - 1) + 2 * x - 1
End If
End If
End Function
好难啊。
回话