以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  周末了 人气困了 出个题目 刺激一下你!  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=8643)

--  作者:mr725
--  发布时间:2010/11/20 22:57:00
--  周末了 人气困了 出个题目 刺激一下你!

Dim sz As String = "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26"
Dim zm As String = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
Dim jz As String = "I Love foxtable"   

 

请用数字表示:I Love foxtable   

 

说明:

a  对应数字 1

b 对应数字 2

.....

l  对应数字 12

......

z 对应数字 26

 

正确答案:9,12,15,22,5,6,15,24,20,1,2,12,5

 

请写出代码···    .......   呵呵。。。。。。。

[此贴子已经被作者于2010-11-21 23:09:39编辑过]

--  作者:bohe
--  发布时间:2010/11/21 9:28:00
--  

楼主题目不严谨,应该说A和a对应数字1……

 

 

来个全小写的

Dim jz As String = "i love foxtable"
Dim tm As String
Dim i As Integer
For i=0 To jz.Length-1
    tm=tm+iif(Asc(jz(i))>=97 And asc(jz(i))<=122,cstr(Asc(jz(i))-96),jz(i))
Next

jz=tm
output.show(jz)

 

 

用上面的对应关系

Dim sz As String = "1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26"
Dim zm As String = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
Dim jz As String = "i love foxtable"
Dim sztm(),zmtm() As String
sztm = sz.Split(",")
zmtm = zm.split(",")
Dim i As Integer
For i=0 To 25
    jz=jz.Replace(zmtm(i),sztm(i))
Next
output.show(jz)

[此贴子已经被作者于2010-11-21 9:51:18编辑过]

--  作者:lxl
--  发布时间:2010/11/21 10:42:00
--  

用ASCII码转换效率比较高。

a = 97 b = 98

A = 65 B = 66

 


--  作者:qtcks
--  发布时间:2010/11/21 10:49:00
--  
Dim zm As String = "abcdefghijklmnopqrstuvwxyz"
Dim jz As String = "i love foxtable"
Dim nr As String
For i As Integer =0 To jz.Length-1
    If zm.Contains(jz.Chars(i)) Then
        nr += zm.IndexOf(jz.Chars(i))+1 & ","
    End If
Next
output.show(nr)
9,12,15,22,5,6,15,24,20,1,2,12,5,

--  作者:mr725
--  发布时间:2010/11/21 22:24:00
--  
呵呵,比我强····谢谢。
--  作者:程兴刚
--  发布时间:2010/11/21 22:55:00
--  

凑个热闹,不知道可否再精简代码:

 

Dim s As String = "i love foxtable".Replace(" ","")
Dim a As String
For i As Integer = 0 To s.Length - 1
    a =a & Asc(s.SubString(i,1))-96 & ","
Next
output.show((a & ",").Replace(",,",""))

 

9,12,15,22,5,6,15,24,20,1,2,12,5

 

完全符合楼主要求


--  作者:mr725
--  发布时间:2010/11/21 23:05:00
--  

够精简了~   谢了。


--  作者:kylin
--  发布时间:2010/11/23 12:03:00
--  
收藏,希望有更多的题目和对应方案,提升水平。自己和大家一起努力!
--  作者:czy
--  发布时间:2010/11/23 18:57:00
--  
以下是引用bohe在2010-11-21 9:28:00的发言:

楼主题目不严谨,应该说A和a对应数字1……

 

 

这样就严谨了,以2、4、6楼为例分别是:

 

Dim jz As String = "I Love FoxTable".ToLower

 


Dim s As String = "I Love FoxTable".ToLower.Replace(" ","")


--  作者:bohe
--  发布时间:2010/11/23 22:46:00
--  
以下是引用czy在2010-11-23 18:57:00的发言:

 

这样就严谨了,以2、4、6楼为例分别是:

 

Dim jz As String = "I Love FoxTable".ToLower

 


Dim s As String = "I Love FoxTable".ToLower.Replace(" ","")

哈哈,c版对狐表真是非常熟悉,我找这个转小写的很久了,就没找到。