当前位置:主页>Visual Basic教程>文章内容
算法从哪学起
来源: 作者: 发布时间:2007-04-29  
算法是编程的灵魂。不可想象,没有算法的程序会是一个高水平的程序。窗体的形状、大小涉及到算法;控件自身以及与其它控件的诸多关系需要计算;字符串的查找、截取和替换更离不开它了……总之,从小到一个按钮的安放位置,大到……(哪里呀?我不知道),无不与算法息息相关。
算法或是很简单,或是很复杂。凡事从简单做起,这是捷径吧。本文将从最简单的算法说明一下学习算法从哪开始。
有时简单的事也会让我们做成很复杂。比如:计算a的b次方吧,有人这样处理:
DimaAsSingle,TotalAsSingle,bAsInteger
a=Text1.Text:b=Text2.Text:Total=1
DoWhileb<>0
Total=Total*a
b=b-1
Loop
Text3.Text=Total
甚至这样:
PrivateSubCommand1_Click()
DimaAsSingle,TotalAsSingle
DimbAsInteger,nAsInteger

a=Text1.Text
Total=Text1.Text
b=Text2.Text

SelectCaseb
Case0
Total=1
CaseIs<0
MsgBox"非法数据",vbOKOnly,"出错"
Text3.Text=""
ExitSub
CaseElse
Forn=1Tob-1
Total=Total*a
Next
EndSelect
Text3.Text=Total
EndSub

其实,如若知道VB中有一个专门计算此类问题的运算符“^”,则会简单可靠得多。试看:
DimaAsDouble,bAsInteger,cAsDouble
a=Text1.Text:b=Text2.Text
c=a^b
Text3.Text=c
再比如,VB编程乐园最近有一篇关于翻转字符串的文章,讨论如何利用递归原理编制一个翻转字符的函数,算法很精密,非常有意思(推荐认真研究一下):
Functionreversestring(revstrAsString)AsString
DimdoreverseAsLong
reversestring=""
Fordoreverse=Len(revstr)To1Step-1
reversestring=reversestring&Mid$(revstr,doreverse,1)
Next
EndFunction

不过如果我们用VB的内部函数StrReverse则更快更方便:
Text2.Text=StrReverse(Text1.Text)
看了这上面几个例子,你得出什么结论?哈,要学算法,首先得学一学VB的运算符和内部函数!吃透这些东西总没错,免得日后辛辛苦苦弄了个算法,回头一看,哇噻,VB自身早就有了!当然了,自己搞些算法不会没有好处的,至少可以锻炼锻炼嘛。只是在当今什么都飞速发展的年代,如果不是为了练习的需要,最好不要走太多的弯路。我说错了什么的话,敬请斧正!->


 
上一篇:(空字串)、Null、Empty、与Nothing的区别   下一篇:大小写互换的三种方法
 
  相关文章
·(空字串)、Null、Empty、与Nothing的区
·大小写互换的三种方法
·字符串中包含双引号
·统计字数
·字符串中文的问题
·在VB5中将英文字母及阿拉伯数字旋转任
·使VB的网格控件具有输入功能
·人民币小写转大写
·如何取得中英混合字符串的长度
·用VB实现鼠标的隐藏
·切分字符串
·将ENTER变成TAB键
 
【关闭窗口】
推荐本站资源
最新文章