1、程序1求100550内的所有素数的个数。(素数是指只能被1和本身整除的数)set talk offclean=0for i=100 to 550f=1for j=2 to iif mod(i,j)=0f=0loopendifendforif f=1n=n+1endifendfor? nreturn2下面程序求1!+3!+5!+(2K+1)!,要求在其和大于20000时中止程序运行。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)CLEAI=0S=0DO WHILE .T.I=I+1IF I/2=_LOOPENDIFJ=1SUB=1DO WHILE J20000EXIT
2、ENDIFENDDO? SSET TALK ONRETUset talk offclean=0for i=100 to 550f=1for j=2 to iif mod(i,j)=0f=0loopendifendforif f=1n=n+1endifendfor? nreturn4判断正误求方程9x+4y=2000的所有正整数解的|x-y|的最小值。源程序文件:C:/SudenntHNCRE/2010706012520040/Programset talk offclearmin=0for x=1 to 230y=int(1000-9*x)/4)z=abs(x-y)if 9*x+4*y=100
3、0 and y0 and minzmin=zendifendfor? minset talk onreturn5程序填空 求能被3整除且有一位数字为6的三位数的个数。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)程序文件:C:/SudenntHNCRE/2010706012520040/Program/2.prgSET TALk OFFCLEAS=0X=100DO WHILE X999IF _A=INT(X/100)B=INT(X/10)-A*10C=X-A*100-B*10IF _S=S+1ENDIFENDIFX=X+1ENDDO? SRETU6程序编写已知:f(
4、n)=f(n-1)+2*f(n-2)-5*f(n-3),f(0)=1,f(1)=2,f(2)=3,求f(0)+f(1)+f(30)。7求出1000,10000内所有能被147或者197整除的整数之和。#include#includeclass additionlong I,a,b,c,d,sum,count,abs_sub,max,min;public:addition(long a1,long b1,long c1,long d1)a=a1;b=b1;c=c1;d=d1;void solution() for(I=a;I=b;I+)if(I%c=0&I%d!=0)|(I%c!=0&I%d=0
5、)sum=sum+I; void add_sum()/求整数和coutsum is:sumendl;void main()addition obj(1000,10000,147,197);obj.solution();obj.add_sum(); 8求方程8372*x*x-33488*x=1850212在范围-1000,+1000之间整数解的和的绝对值 if(a*x*x+b*x=c) xs+solution_count=x; void solution_add_abs()/和的绝对值 switch(solution_count) case 1:coutsolution add abs is:a
6、bs(xssolution_count)endl;break; case 2:coutsolution add abs is:abs(xs1+xs2)endl;break; default :coutNot solution!2)称为E数列,每一个E(n),(n=1,2,)称为E数。求1,30000之内E数的个数。9求出100以内的最小的自然数n,使得从1开始的连续n个自然数的平方根之和大于500。set talk offclears=0for n=1 to 100s=s+nif s500exitendifendfor? sset talk onreturn10求12000以内能同时被13和1
7、7整除的数的和。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)SET TALK OFFCLEARI=1S=0DO WHILE I=1.9exitendifendfor? n-1set talk onreturn13大马、小马和马驹共100匹,大马一驮三,小马一驮二,马驹二驮一,共100片瓦一次驮完,三种马都驮,共有多少种组合。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)SET TALK OFFCLEAS=0DM=1DO WHILE DM=100/3XM=1DO WHILE XM=(100-DM*3)/2MJ=100-DM-XMIF _S
8、=S+1ENDIF_ENDDODM=DM+1ENDDO? SRETU14求500以内(含500)能被5或9整除的所有自然数的倒数之和。按四舍五入的方式精确到小数点后第二位。15程序改错题求出100以内使得算式1+1/(1*2)+1/(1*2*n)的值大于1.71828的最小的自然数n。求出100以内使得算式1+1/(1*2)+1/(1*2*n)的值大于1.71828的最小的自然数n。set talk offcleara=1.00000000s=0.00000000for n=1 to 100a=a*ns=s+aif s800exit endifendfor? nset talk onretur
9、n 求1000,3000范围内满足这样条件的数的个数:这个数的所有因子之和(不包括这个数本身)能够被3整除。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)set talk offcleacount1=0for i=1000 to 3000 sum2=0 for j=1 to i-1 if i%j=0 _ endif endfor if _ count1=count1+1 endifendfor? count1retu设某四位数的各位数字的平方和等于100,问满足这种条件的四位数且是素数的数共有多少个?set talk offclean=0for x=1000 to
10、9999f=1for i=2 to int(sqrt(x)if mod(x,i)=0f=0exitendifendforif f=0a=int(x/1000)b=int(x-a*1000)/100) c=mod(x,100)d=mod(x,10)if a*a+b*b+c*c+d*d=100n=n+1求1000,3000范围内满足这样条件的数之和:这个数的所有因子之和(不包括这个数本身)能够被17整除。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)set talk offcleasum1=0for i=1000 to 3000 sum2=0 for j=1 to i-
11、1 if i%j=0 _ endif endfor if sum2%17=0 _ endifendfor? sum1retu当n=50时,求下列级数和:S=1/(1*2)+1/(2*3)+1/(n*(n+1)要求:按四舍五入的方式精确到小数点后第四位。已知数列:1,2,4,7,11,16,,其规律是相邻两项之差依次是1,2,3,4,5,。求100以内最小的自然数n使得此数列的前n项之和大于800。set talk offcleara=0s=0for n=1 to 100a=a+ns=s+a* ? n,a,sif s800exit endifendfor? nset talk onreturn已
12、知S1=2, S2=2+4, S3=2+4+6, S4=2+4+6+8,S5=2+4+6+8+10,,求 S=S1+S2+S3+S4+S5+S20的值。出13,1300之间非素数非偶数之和。set talk offclears=0for i=13 to 1300 for j=2 to i if mod(i,j)=0 or mod(i,2)=1 s=s+i exit endif endforendfor?sset talk onreturn 求能被6整除且有一位数字为8的三位数的和。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)SET TALk OFFCLEAS=0X
13、=100DO WHILE X=10000loopendifendfor? n-1set talk onreturn(A,B)满足条件A是素数,B是素数,A+B的和也是一个素数,又777BA=2。求这样的(A,B)中所有A的和是多少。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)set talk offcleasum1=0for a=2 to 777 for b=a+1 to 777 if _ sum1=_ endif endforendfor? sum1retufunction su(x)for j=2 to sqrt(x)if x%j=0 return(.f.)e
14、ndifendfor求方程9x+4y=2000的所有正整数解的|x-y|的最大值。clearmax=2000/4-2000/9for x=1 to 230y=int(1000-9*x)/4)z=abs(x-y)if 9*x+4*y=1000 and y0 and maxzmax=zendifendfor? maxset talk onreturn下列程序的功能是求500到1000之间的所有奇数的平方和并显示结果。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)SET TALK OFFCLEARSum=0x=500DO WHILE x=3。求数列中第一个大于100的素数
15、项是数列的第几项。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)cleadime fib(100)fib(1)=1fib(2)=1_do while .t.fib(i)=fib(i-1)+fib(i-2)if _ ? i exit endifi=i+1enddoretufunction su(x)for j=2 to sqrt(x)if x%j=0return(.f.)endifendforif jsqrt(x)return(.t.)endif若两个自然连续数乘积减1后是素数,则称此两个自然连续数为友数对,该素数称为友素数,例:2*3-1=5,因此2与3是友数对,5
16、是友素数,求40,119之间友素数对的数目。set talk offclears=0for x=100 to 999a=int(x/100)b=int(x-a*100)/10)c=mod(x,1)if mod(a*b*c,96)=0s=s+xendif endfor? sset talk onreturn求1,50之间,所有能构成直角三角形的三边的整数的组数。例如:3*3+4*4=5*5,它们构成直角三角形,所以3,4,5作为一组,但4,3,5,5,4,3等视为跟3,4,5相同的一组。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)set talk offclea_f
17、or i=1 to 50 for j=i+1 to 50 for k=j+1 to 50 if _ count1=count1+1 endif endfor endfor endfor ? count1 retu若(x,y,z)满足方程:x2+y2+z2=552(注:要求 x y z),则(x,y,z)称为方程的一个解。试求方程的所有整数解中x+y+z的最大值。已知一个由分数组成的数列:1/2,3/5,8/13,21/34,其特点是:从其中第2个分数起,每个分数的分子都是前一分数的分子分母之和而其分母都是其分子与前一分数的分母之和。试求出此数列的前25项中其值大于0.618的项数。set ta
18、lk offclearf1=1f2=2n=0for k=1 to 25f=f1/f2if f0.618n=n+1endiff1=f2f2=f1endfor? nset talk onreturn求1234680的因子中素数因子的和是多少。填空完成程序,然后运行程序得出正确结果。(答案填程序运行结果,保留整数位)set talk offcleasum1=0 for i=2 to 1234680 if _ sum1=_ endif endfor ? sum1 retu function su(x)for j=2 to sqrt(x)if x%j=0 return(.f.)endifendforif
19、 jsqrt(x)return(.t.)endif300,800范围内同时满足以下两个条件的十进制数. 其个位数字与十位数字之和除以10所得的余数是百位数字 ;该数是素数;求满足上述条件的最大的三位十进制数。编写程序,计算10000以内个位数为6且该数能被9整除的所有数之和。set talk offclean=0for I=1 to 10000sw=mod(I,10)if sw=6if mod(I,10)=9n=n+Iendifendifendfor? Nreturn已知A,B为正整数, A2)求F(0)到F(100)中负数的个数。下面的程序是求200,800之间最大的20个素数之和。请修改程
20、序中的错误,使它能得出正确的结果,并给出正确结果。程序:#include #include #include int fun(int high) int sum=0, n=0, j, yes; while(high=2)|(n20) yes=1 ; for(j=2; j=sqrt(high); j+) if(high%j=0) yes=0; break; if(yes) sum+=high; n+; high-; return sum; main() clrscr(); printf(%d n,fun(800); 已知24有8个因子,而24正好被8整除。求10,200之间有多少个整数能被其因子
21、的个数整除,将下列程序补充完整,把程序运行的正确结果填入相应窗口。程序:main() int a,b,c,n,count=0; for (a=10; a=200; a+) _ for (c=1;c=a;c+) if (a%c =0) _ if (a%b=0) count+; printf(%d,count);求Y=1-1/2+1/3-1/4+1/5.前30项之和。要求:按四舍五入的方式精确到小数点后第二位。已知数列:1、2、4、7、10、15、,其特点是:相邻两项之差恰好构成自然数列:1、2、3、4、5、。求此数列的前100项中能被4整除的项的个数。set talk offcleara=1k=0for n=1 to 100a=a+nif mod(n,4)=0k=k+1endifendfor? kset talk onreturn求在1,2,3,80这80个数中,任意选两个不同的数,它们的和能被4和9整除的数的总对数(1+35和35+1认为是同一对数)。填空完成程序
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1