1、求所有各位数字的立方和等于1099的3位正整数PrivateSubForm_Click()Dima%,b%,c%,i%,Fori=100To999a=I\100b=I\lOmod10c=Imod10ifaA3+bA3+cA3=1099thenPrintI;NextEndSub写一程序,输入一正实数x,分别输出该数的整数部分的位数和小数部分的位数PrivateSubForm_Click()Dimx$,a,i%,j%,b#,1%x=InputBox("inputdata:")leng=Len(x)a=Int(Val(x))lenl=Len(Trim(Str(a)))len2=leng-lenl-1Print“整数位数=”;lenl,”小数位数len2EndSub求同构数同构数是这样一种数,它出现在它的平方数的右端例如5的平方是25,5是25的右端的数,5就是同构数;25也是同构数,因为它的平方是625编程找出1~100之间的全部“同构数PrivateSubForm_Click()Fori=ITo100p=i*iIfLen(Trim(Str(i)))=1ThenIfTrim(Str(i))=Right(Trim(Str(p)),1)ThenPrintiElselfLen(Trim(Str(i)))=2ThenIfTrim(Str(i))=Right(Trim(Str(p)),2)ThenPrintiEndIfNextEndSub2.. 求“水仙花”数题目水仙花数是一个三位数,其各位上数的立方和等于这个数,例如153,13+53+33=153。
PrivateSubCommandl_Click()Forn=100To999a=n\100b=n\10Mod10c=nMod10IfaA3+bA3+cA3=nThenPrintnEndIfNextEndSub5、编写一程序,输入一系列整数,用作为结束标志,统计其中有多少个正数,多少个负数PrivateSubCommand3_Click()Dima%,zs%,fs%zs=0:fs=0a=Val(InputBox("inputdata:"))Whilea<>0Ifa>0Thenzs=zs+1Ifa<0Thenfs=fs+1a=Val(InputBox("inputdata:"))WendPrintniE数个数=”;zs,”负数个数=”;fs其它其它EndSub6、编写一程序,输入一串字符,以'?'结束,输出其中英文字母个数、数字字符个数和字符个数PrivateSubCommandl_Click()Dimc$,i%,ch$,zm%,sz%,a$,qt%c=ch=InputBox(''inputchar:")i=1:zm=0:sz=O:qt=Oa=Mid(ch,1,1)Whilea<>n?nIfucase(a)>="A"Anducase(a)<="Z"Thenzm=zm+1elselfa>="O'*Anda<=”9”Thensz=sz+1elseqt=qt+lendifi=i+1a=Mid(ch,i,1)WendPrint“英文字母zm,”数字sz,”其它字符qtEndSub7、编写程序:读入一组整数,从第二个数开始遇零结束输入,输出与第一个数相同符号的所有数。
PrivateSubCommand9_Click()Dima%,b%,i%a=Val(InputBox("inputonedata:'*))i=Sgn(a)b=Val(InputBox("inputnextdata:"))Whileb<>0Ifi=Sgn(b)ThenPrintbb=Val(InputBox("inputdata:"))WendEndSub、数列放置位置问题8. 编写一程序,用InputBox输入十个整数,求其中最大数,并将最大数和数组中最后一个数交换位置(要求用数组方法实现),在窗体中显示出运行结果PrivateSubCommand7_Click()Dima%(10),i%,t%,ma%,j%Fori=1To10a(i)=Val(InputBox('Inputdata:'*))Printa(i);NextPrintma=a(l):j=1Fori=2To10Ifmava(i)Thenma=a(i):j=iNextt=ma:a(j)=a(10):a(10)=tFori=ITo10Printa(i);NextPrintPrint最”大值是:maEndSub编写一程序,将一个数插入到有序的数列中,插入后使数列仍然有序。
如一个数列:1、3、5、6、7、8,插入数字4,结果为:1、3、4、5、6、7、8PrivateSubCommand10_Click()Dima(),i%,x%,k%,j%a=Array(l,2,4,5,7,8,9)k=UBound(a)ReDimPreservea(k+1)x=Val(InputBox('Inputdata:"))j=k+lFori=0TokIfx
PrivateSubCommand12_Click()Fori=100To900IfiMod4=0AndiMod10=0AndiMod15<>0ThenPrintiNextEndSub(2) 计算s=l-l/4+1/7-1/10+1/13-1/16+…直到最后一项绝对值小于0.000001为止PrivateSubForm_Click()s=O:p=l:t=lWhile1/p>=0.000001s=s+t*1/pt=-tWendPrintsEndSub(3) 求PI求e:e=l+l/l!+l/2!+l/3!+..+l/N!,精度为le-612. 求输入任何一串字符的个数PrivateSubCommandl_Click()c$=InputBox("")Fori=1ToLen(c)cl=Mid(c,i,1)Ifcl>="A"Andcl<=nZ"Thena=a+1Elselfcl>="a"Andcl<="Thenb=b+1Elselfcl>="O"Andcl<=”9”Thene=e+1Elsed=d+1EndIfNextPrinta,b,e,d;EndSub13. 用一张100元的钞票,换一元的,两元的,五元的钞票(每一种至少有一张)问有几种换法。
PrivateSubCommandl_Click()Fori=ITo93Forj=1To47Fork=1To19Ifi+2*j+5*k=100ThenPrinti,j,kNextNextNextEndSub14. 计算1+1/2+1/4+1/7+1/11+当地i项值<0.00001时结束PrivateSubCommandl_Click()i=l:t=1While1/t>=0.0001s=s+1/1t=i+1i=i+1WendPrintsEndSub15. 计算2/1+3/2+5/3+8/5+共有20项PrivateSubCommandl_Click()s=0i=1j=2s=s+j/ik=1Whilek<20q=i+ji=jj=qs=s+j/ik=k+1WendPrintsEndSub另一种方法PrivateSubCommandl_Click()s=0:a=2:b=lFori=1To20s=s+a/bb=a+bt=aa=bb=tNextEndSub0的4\4的方阵0的4\4的方阵16. 利用二维数组生成一个下对角线为1其余元素为PrivateSubCommandl_Click()Dima%(4,4)Fori=1To4a(i,i)=1a(i,5-i)=1NextFori=1To4Forj=1To4Printa(i,j);17. 利用随机数产生一个4*4的矩阵数据,求出这个矩阵中的最大值和位置PrivateSubCommandl_Click()Dima(4,4)Fori=1To4Forj=1To4a(i,j)=Int(Rnd*20)Printa(i,j);NextPrintNextm=a(l,1)k=1n=1Fori=1To4Forj=1To4Ifm
例如90=2*3*3*5PrivateSubCommandl_Click()a=Val(InputBox(',H))Printa;Whilea>1k=2Fori=kToaIfaModi=0ThenForj=2ToSqr(i)IfiModj=0ThenPrinti:ExitForNextIfj>Sqr(i)Thena=a/iIfa=1ThenPrinti;ElsePrinti;ExitForEndIfEndIfNextWendEndSub菲薄那窃数列PrivateSubCommandl_Click()Dima(50)a(l)=1a(2)=1Fori=3To50a(i)=a(i-1)+a(i-2)NextFori=1TO50Printa(i);NextEndSub九九乘法表PrivateSubCommandl_Click()'编辑九九乘法表Fori=1TO9Forj=IToise=i&"X”官&i*jPrintTab((j)*10-12);se;NextPrintNextEndSub19. 三角形等边三角形PrivateSubCommandl_Click()n=Val(InputBox(Fori=1TonForj=1ToiPrintTab((j.2)*4+23-2*i);n@";22.00求任意给出的正整数各位的和是多少PrivateSubCommandl_Click()Dimb()A=Val(InputBox(HH))PrintAk=Len(Trim(Str(A)))ReDimb(k)i=1WhileA>0b(i)=AMod10i=i+1A=A\10WendFori=1TokPrintb(i);s=s4-b(i)NextPrintPrintsEndSub用随机函数随机产生50—100的10个数然后,找出这几个数的最大之和最小值以及他们的平均数。
PrivateSubCommandl_Click()Dima(10)Fori=1To10a(i)=Int(Rnd*51+50)Printa(i);s=s4-a(i)Nextma=a(l):mi=a(l)Fori=2To10Ifm。