欢迎来到天天文库
浏览记录
ID:44363864
大小:88.50 KB
页数:9页
时间:2019-10-21
《常用算法VFP程序》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、1.求最大、最小数问题Dimex(30)Maxx=O&&极小数Minx=300&&极大数Fork=lto30X(k)=l+rand()*300Ifx(k)>maxxMaxx=x(k)EndifIfx(k)0X=yY=RR=x%yEnddo?y,M*N/y3.素数(质数)问题InputtoxFork=2to
2、x-1Ifx%k=()exitendifendforifk=x?x,”isprime^^Else?x.''notprime"endif4.阶乘问题InputtoxF=1Fork=xto2step-1F=f*kEndfor?F1.百钱百鸡问题fori=0to33forj=0to50k=100-i-jif3*i+2*j+int(0.5*k)=100?i,j,kendifendforendfor2.倍数问题一个正整数与3的和是5的倍数,与3的差是6的倍数,编程序求出符合此条件的最小正整数。num=ldoWhile(num
3、+3)%5<>0or(num-3)%6<>0num=num+lenddo?num3.判断回文数AccepttosL二len⑸Fork=ltoint(L/2)ifsubs(s,k,1)<>subs(s,L-k+1,1)exitendifEndforIfk<=int(L/2)?s「不是回文数”else?s,”是回文数”endif4.完全数(因数和)问题所谓“完全数”是指一个数恰好等于它的所有因子之和,例如,6=1+2+3,6是“完全数寫编程序求1000以内的“完全数”ClearForn=lto1000m=0fori=1
4、ton-1ifn%i=0m=m+iendifendforifm=n??nendifendfor1.二■十进制数转换inputton&&输入一个二进制数s=0k=0dowhilen<>0s=s+n%10*2Akk二k+1n=int(n/10)enddo?s2.十■二进制数转换dimes(30)L=1i叩uttode&&输入一个十进制数dowhilede<>0s(L)=de%2de=int(de/2)L=L+1enddofori=L-lto1step-1??str(s(i),l)endfor3.常用级数生成与求和(1)
5、己知数列{an}满足a1=1,an=a1+2a2+3a3+•••.+(n-1)an-1(nM2)。请编写程序,求出a1000的值。A=1n=2doWhilen<=1000A=A+(n-l)*An=n+lenddo?A(2)计算:Sn=a+aa+aaa+…+aaaa---aa(最后一个为n个a)比如,当n=4,a=3的时候,则为计算:s=3+33+333+3333InputtonInputtoaS=aT=aFor1=2tonT=T*10+as=s+Tendfor?s其它级数求和问题,请参考辅导资料1.二分法求高阶方程
6、的根xl二・10x2=10Eps=10A-5dowhile.t.xO=(x1+x2)/2fxO=fun(xO)fxl=fun(xl)if(fx0*fxl<0)x2=x0elsexl=xOendififabs(fxO)7、nDoWhile(i<100)T=h*(fl(a+i*h)+f1(a+(i+1)*h))/2.0s=s+Ti=i+lenddo?sProceflparaxreturnEulerA(-x*x)(说明:实际求解吋,请注意正确书写求积函数和等分数)1.冒泡排序fori=ltoNforj=ltoN-iif(a(j)va(j+l))temp=a(j)a(j)=a(j+l)a(j+l)=tempendifendforendfor(说明:该程序己知数组a的长度为N,并己经被赋值为乱数列)2.选择排序fori=ltoN-lk=if8、orj=i+ltoNif(a(j)
7、nDoWhile(i<100)T=h*(fl(a+i*h)+f1(a+(i+1)*h))/2.0s=s+Ti=i+lenddo?sProceflparaxreturnEulerA(-x*x)(说明:实际求解吋,请注意正确书写求积函数和等分数)1.冒泡排序fori=ltoNforj=ltoN-iif(a(j)va(j+l))temp=a(j)a(j)=a(j+l)a(j+l)=tempendifendforendfor(说明:该程序己知数组a的长度为N,并己经被赋值为乱数列)2.选择排序fori=ltoN-lk=if
8、orj=i+ltoNif(a(j)
此文档下载收益归作者所有