还剩2页未读,继续阅读
文本内容:
常用算法总结VB
一、变量值的交换算法思想若交换两个变量的值,必须引入第三个新的变量进行传递以下代码是错误的X=12Y=34X=YY=X正确的代码是X=12Y=23T=XX=YY二T
二、判断一个数是否能被另一个数整除算法思想可以用整除的定义(余数为)或除以等于整除等表达式进行判断0X YX Y条件表达式可以为或或()X modY=0X\Y=X/Y IntX/Y=X/Y如果以上条件表达式为则表示能被整除True,X Y
三、累加、阶乘、计数和求平均值算法思想使用循环语句,并用一个变量存放累加的中间及最终结果注累加求和时变量初值为计算阶乘时变量初值为0,1统计计个数(计数)时可用一个变量作为统计个数的累加变量,每次加即可1求平均值算法思想是先求和,再除以个数条件求和(或计数)在循环语句中加入判断语句If—End If例题计算到之间所有整数的累加和以及11010!n=10累加求和时,变量的初值一定为sum=00累乘(连乘)时,变量的初值一定为prod=l1For i=l To nsum=sum+iprod=prod*iNext iPrintsum,prod例题统计之间能被整除的数的个数、累加和及其平均值0—1003s=0n=0For i=0To100If imod3=0Thens=s+in=n+lEnd IfNext iPrint n,s,s/n
四、随机数的产生[]之间的随机整数a,b(())Int b-a+1*rnd+a()随机数a,b()b-a*rnd+a
五、求若干个数中最大值或最小值
六、常用字符处理函数函数从字符串指定位置取指定个字符,格式为(字符)从第个字符开始,向Mid Mid,p,n,p后截取个字符(若省略则取到最后)n n和函数:从字符串左边或右边取指定个字符,格式为(字符,)和(字符,)Left RightLeft nRight n函数测试字符串长度Len和函数将小写字母转换为大写字母;将大写字母转换为小写字母UCase LCaseUCase LCase([首字符位置]字符串字符串[川)在字符串中查找字符串如果找到,返回Instr,1,2,12,字符串的第一个字符在字符串中出现的位置首字符位置是可选的,如果不指定,从字符21串起始位置开始查找;如果指明,从指定的位置开始查找函数返回字符串中第一个字符的码Asc ASCII函数将一个数值转换为其所对应的字符Chr字符的比较规则是按码顺序比较,规则为空格vASCII A〜Z””a”〜z小写字母的比大写字母的小ASCII ASCII32o例题将所有文本转换为大写小写字母
1.可以直接使用函数转换例如UCase LCaseText
2.Text=UCaseTextl.Text对某个字符串的所有字符逐一处理
2.算法思想如果对某个字符串的所有字符逐一处理,即从字符串的第个字符开始到最后一1个字母,每次处理个字符可以使用循环实现通用代码为1ForFor i=l ToLenssl=Midsj,lNext i字符转换
3.算法思想通过字符的码进行处理使用函数,然后再使用函数将转换成ASCII AscChr ASCII字符例题将文本框中字符按如下规律转换、并显示在文本框中Textl a—b b—c……z-a,Text2s=Textl.Textn=LensFor i=1To nsi=Mids,i,1Ifsl=nan Andsi=Thens2=s2+ChrAscsl+1Elselfsl=Mzn Thens2=s2+nanEnd IfNext iText
2.Text=s2例题将文本框中的小写字母转换其对应的大写字母,将大写字母转换成小写字母,并显1Textl示在文本框中Text2Private Sub Command l_Clicks=Textl.Textn=Lensm=AscA-AscnAHFor i=1To nsi=Mids,i,1Ifsl=nan Andsi=Thens2=s2+ChrAscsl-mEnd IfIfsl=nAM Andsi=nZH Thens2=s2+ChrAscsl+mEnd IfNextiText
2.Text=s2End Sub统计某字符出现次数
5.算法思想对字符串中字符逐一判断,如果是某字符,则统计变量加1例题统计文本框中字符和出现的次数不区分大小写Textl ijPrivate SubCommand1_Clicks=Text
1.Textn=LensFor i=1To nsi=Mids,i,1IfUCasesl=nIn Then ni=ni+1=丁IfUCasesl Thennj=nj+1NextiPrint ni,njEnd Sub
九、最大公约数和最小公倍数算法思想对于已知两数、使得1x y,xy2x除以y得余数r;若「则为求得的最大公约数,算法结束;否则执行步骤30,x4再重复执行4x-y,y-r,2求得了最大公约数后,最小公倍数就可很方便地求出,即将原来的两数相乘除以最大公约数Private SubForm_Click请输入第一个数请输入第二个数”x=ValInputBox y=ValInputBox If xy Thent=x二二x y y=t EndIfx1=x yly Printx,y DoWhile y0r=x Mody x=yy=rLoop最大公约数为Print””;x”最小公倍数为”;Print xl*yl/xEnd Sub
十、水仙花数定义“水仙花数”是指一个三位数,其中各位数字的立方和等于该数本身如分153=^+53+33析此题的关键是要知道如何分离出一个三位数中的各位数字例题找出之间的所有“水仙花数,100〜999Private SubCommand1_Click八八八For i=100To999a=Inti/100b=Inti-100*a/10c=i-Inti/10*10Ifi=a3+b3+c3ThenPrintiEnd IfNextiEnd SubPrivateSubCommand1_Click Forn=100To999s=0a=n DoWhile a0b=a Mod10s=s+b*b*b a=a\10LoopIf s=n ThenPrintnNext nEndSub
十一、斐波那切数列的输出该数列刖两项为从第二项开始,1,1an=an-i+an-2
十二、进制转换
十三、数排序
十四、分段函数
十五、图形输出(双重循环)
十六、百鸡百钱问题
十七、迭代法页P116
十八、输入的值,求方程的解a,b,c,ax2+bx+c=0注意对象只考文本框、标签、命令按钮和窗体。
个人认证
优秀文档
获得点赞 0