二级c语言填空_第1页
二级c语言填空_第2页
二级c语言填空_第3页
二级c语言填空_第4页
二级c语言填空_第5页
已阅读5页,还剩177页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

6001题:

求出[1000,100000]内所有能同时被17和19整除的整数之和。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

(

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=b1;c=cl;d=d1;}

voidsolution(){

for(i=a;i<=b;i++)

if(){

sum=sum+i;

voidadd_sum()

cout«"sumis:"«sum«endl;

)

);

voidmain()

(

additionobj(1000,10000,17,19);

obj.solution();

obj.add_sum();

)

答案:148257

6002题:

求出[1000,100000]内所有能同时被17和19整除的整数的个数。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=b1;c=c1;d=d1;}

voidsolution(){

for(i=a;i<=b;i++)

if()count++;

)

voidadd_number()

(

cout«"Thenumberis:"«count«endl;

)

);

voidmain()

(

additionobj(1000,10000,17,19);

obj.solution();

obj.add_number();

答案:27

6003题:

求出[1000,10000]内所有能被147或者197整除的整数中最大值与最

小值之差。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

(

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=b1;c=cl;d=d1;}

voidsolution(){

sum=0;count=0;max=0;min=b;

for(i=a;i<=b;i++)

if((i%c==0&&i%d!=0)ll(i%c!=0&&i%d==0)){

sum=sum+i;count++;

if(i<min)____________

if(i>max)___________

)

voidsub_abs()

cout«"Thesubabsolutionis:"«max-min«endl;

)

);

voidmain()

(

additionobj(l000,10000,147,197);

obj.solution();

obj.sub_abs();

)

答案:8967

6004题:

求出[1000,10000]内所有能被147或者197整除的整数的个数。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=bl;c=c1;d=d1;}

voidsolution(){

for(i=a;i<=b;i++)

if((i%c==0&&i%d!=0)ll(i%c!=0&&i%d==0))

)

voidadd_number()

(

cout«"Thenumberis:"«count«endl;

)

);

voidmain()

(

additionobj(l000,10000,147,197);

obj.solution();

obj.add_number();

答案:107

6005题:

求出[1000,10000]内所有能被147或者197整除的整数的之和。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

(

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=b1;c=cl;d=d1;}

voidsolution(){

for(i=a;i<=b;i++)

if()sum=sum+i;

)

voidadd_sum()

cout«"sumis:"«sum«endl;

voidmain()

additionobj(1000,10000,147,197);

obj.solution();

obj.add_sum();

)

答案:589995

6006题:

求整数4998889的因子(不包括1和自身)中的最小者。

原程序:

#include<iostream.h>

#include<math.h>

classfactorial

(

intn,count,max,min,sum;

public:

factorial(intm){n=m;}

voidsolution()

inti;

for(i=2;i<n;i++)

if(){

if(min>i)min=i;

)

)

voidshow(){

solution();

cout«"min="«min«endl;

)

);

voidmain()

(

factorialob(4998889);

ob.show();

)

答案:7

6007题:

个位数为6,且能被3整除的所有五位数(最高位非0)的和。

原程序:

#include<iostream.h>

#include<math.h>

classnumberdivide3

(

private:

longi,m,sum,max,min;

public:

numberdivide3(longml){

i=0;m=ml;

)

voidsolution();

voidshow_sum(){cout«"sum="«sum«endl;}

);

voidnumberdivide3::solution()

while(m<100000)

if()sum=sum+m;

m+=10;

)

)

voidmain()

(

numberdivide3ob(10006);

ob.solution();

ob.show_sum();

)

答案:16503300

6008题:

编写一个程序,求数30240和62280共同拥有的因子之和(不包括1)。

原程序:

#include<iostream.h>

#include<math.h>

classsimple

intx,y,sum;

public:

simple(intfenzi,intfenmu){x=fenzi;y=fenmu;}

voidsolution(){

inti,n;

sum=0;

if()

n=y;

else

n=x;

for(i=2;i<=n;i++)

if(x%i==0&&y%i==0)

)

voidshow_sum(){cout«"sum="«sum«endl;}

);

voidmain()

(

simpleob(30240,62280);

ob.solution();

ob.show_sum();

答案:1169

6009题:

求个位数为6,且能被3整除的五位数(最高位非0)中最大数加上最

小数的值。

原程序:

#include<iostream.h>

classnumberdivide3

(

private:

longi,m,max,min;

public:

numberdivide3(longml){

i=0;m=ml;

)

voidsolution();

voidshow_abs_add(){cout«"max+min="«max+min«endl;}

);

voidnumberdivide3::solution()

max=0;min=99999;

while(m<100000)

(

if()

(

if(max<m)max=m;

if(min>m)min=m;

)

m+=10;

)

)

voidmain()

(

numberdivide3

ob.solution();

ob.show_abs_add();

)

答案:110022

6010题:

求整数4998889的因子(不包括1和自身)中的最大值与最小值之和。

原程序:

#include<iostream.h>

#include<math.h>

classfactorial

(

intn,count,max,min,sum;

public:

factorial(intm){n=m;count=0;max=0;;sum=0;}

voidsolution()

(

inti;

for(i=2;i<n;i++)

if(){

if(max<i)max=i;

if(min>i)min=i;

)

)

voidshow(){

solution();

cout«"max+min="«max+min«endl;

);

voidmain()

(

factorialob(4998889);

ob.show();

)

答案:714134

6011题:

编写一个程序,求数30240和62280共同拥有的因子个数(不包括1)

中最大值与最小值之和。

原程序:

#include<iostream.h>

#include<math.h>

classsimple

intx,y,max,min;

public:

simple(intfenzi,intfenmu){x=fenzi;y=fenmu;}

voidsolution(){

inti,n;

max=0;;

if(x>y)

n=y;

else

n=x;

for(i=2;i<=n;i++)

if()

(

if(max<i)max=i;

if(min>i)min=i;

)

)

voidshow_abs_add(){cout«"max+min="«max+min«endl;}

);

voidmain()

(

simpleob(30240,62280);

ob.solutionQ;

ob.show_abs_add();

答案:1169

6012题:

编写一个程序,求数30240和62280共同拥有的因子(不包括1)中的

最大值。

原程序:

#include<iostream.h>

#include<math.h>

classsimple

(

intx,y,max;

public:

simple(intfenzi,intfenmu){x=fenzi;y=fenmu;}

voidsolution(){

inti,n;

max=0;

if()

n=y;

else

n=x;

for(i=2;i<=n;i++)

if(x%i==O&&y%i==O)

if()max=i;

)

voidshow_max(){cout«"max="«max«endl;}

);

voidmain()

(

simpleob(30240,62280);

ob.solution();

ob.show_max();

)

答案:360

6013题:

个位数为6,且能被3整除的五位数(最高位非0)中,最大数减去最

小数的值。

原程序:

#include<iostream.h>

#include<math.h>

classnumberdivide3

(

private:

longi,m,max,min;

public:

numberdivide3(Iongml){

i=0;m=ml;

)

voidsolution();

voidshow_abs_sub(){cout«"max-min="«max-min«endl;}

);

voidnumberdivide3::solution()

(

max=0;min=99999;

while(m<100000)

(

if()

if(max<m)max=m;

if(min>m)min=m;

)

m+=10;

)

)

voidmain()

(

numberdivide3;

ob.solution();

ob.show_abs_sub();

)

答案:89970

6014题:

求整数4998889的因子中最大与最小值之差。

原程序:

#include<iostream.h>

#include<math.h>

classfactorial

intn,max,min;

public:

factorial(intm){n=m;max=O;min=m;}

voidsolution()

(

inti;

for(i=2;i<n;i++)

if(n%i==0){

if(max<i)max=i;

if(min>i)min=i;

)

)

voidshow(){

cout«"max-min="«max-min«endl;

)

);

voidmain()

(

factorial;

ob.show();

答案:714120

6015题:

求1000—2000之间,能被13除余11,被29除余17,被37除余31,

求该数。

原程序:

#include<iostream.h>

voidmain()

(

for()

if()cout«i«endl;

)

答案:1844

6016题:

个位数为6,且能被3整除的五位数(最高位非0)共有多少个?。

原程序:

#include<iostream.h>

#include<math.h>

classnumberdivide3

(

private:

longi,m,sum,max,min;

public:

numberdivide3(longml){

i=0;m=ml;

)

voidsolution();

voidshow_num(){cout«"number="«i«endl;}

);

voidnumberdivide3::solution()

(

sum=0;max=0;;

while(m<100000)

if(m/3*3==m)i++;

voidmain()

numberdivide3ob(10006);

ob.solution();

ob.show_num();

)

答案:3000

6017题:

求整数4998889的因子个数的程序(不包括1和自身)。

原程序:

#include<iostream.h>

#include<math.h>

classfactorial

(

intn,count,max,min,sum;

public:

factorial(intm){n=m;count=0;}

voidsolution()

inti;

for(i=2;i<n;i++)

if()count++;

)

voidshow(){

cout«"count="«count«endl;

voidmain()

factorialob(4998889);

ob.show();

答案:14

6018题:

求整数4998889的因子(不包括1和自身)的和。

原程序:

#include<iostream.h>

classfactorialsum

(

intn,sum;

public:

factorialsum(intm){n=m;sum=0;}

voidsolution()

(

inti;

for(i=2;i<n;i++)

if(n%i==0)______________

)

voidshow(){

solution();

cout«"factorialsummary="«sum«endl;

)

);

voidmain()

(

factorialsum;

ob.show();

答案:1072150

6019题:

将小于2000且能被4和6中至少一个数整除的所有整数按从小到大

顺序排列后,求最后面的20个数之和。

原程序:

#include<iostream.h>

classadd_sum

(

intx,j,m,n,i,k,sum;

public:

add_sum(intjl,intml,intkl,intnl){j5jl;m=ml;k=kl,n=nl;}

voidback_sum()

(

i=0;sum=0;x=j;

while(i<n&&x>0)

{x=x-l;

if(){

sum=sum+x;

if(x>=O&&i==n)cout«"Thesumis:"«sum«endl;

)

);

voidmain()

(

add_sumobj(2000,4,6,20);

obj.back_sum();

)

答案:39390

6020题:

将大于1000且能被3和5中至少一个数整除的所有整数按从小到大

顺序排列后,求最前面的20个数之和。

原程序:

#include<iostream.h>

classadd_sum

intx,j,m,n,i,k,sum;

public:

add_sum(intjl,intml,intkl,intn1){j=j1;m=ml;k=kl,n=n1;}

voidpre_sum()

(

i=0;sum=0;x=j;

while()

{x=x+l;

if(x%m==0llx%k==0){

i=i+l;}

)

if(x〉=j&&i==n)cout«"Thesumis:"«sum«endl;

)

);

voidmain()

add_sumobj(1000,3,5,20);

obj.pre_sum();

答案:20465

6021题:

求数29516和464172的最大公约数t并输出。

原程序:

#include<iostream.h>

classeuclidean

(

private:

intnl,n2;

public:

euclidean(intml,intm2){nl=ml;n2=m2;}

voidcalculate()

(

inttemp;

if(){temp=n2;n2=n1;n1=temp;}

while(nl>0)

n2=n1;

nl=temp;

)

cout«n2«endl;

)

);

voidmain()

(

euclideanob(29516,464172);

ob.calculate();

)

答案:188

6022题:

编写一个程序,求数30240和62280共同拥有的因子个数(不包括1)。

原程序:

#include<iostream.h>

#include<math.h>

classsimple

intx,y,count;

public:

simple(intfenzi,intfenmu){x=fenzi;y=fenmu;count=0;}

voidsolution(){

inti,n;

if()

n=y;

else

n=x;

for(i=2;i<=n;i++)

if(x%i==0&&y%i==0)count++;

)

voidshow_num(){cout«"number="«count«endl;}

);

voidmain()

(

simpleob(30240,62280);

ob.show_num();

答案:23

6023题:

输入x=0.5值(lxl<l),按下列公式计算S:

S=x+x*x/2+x*x*x/3+x*x*x*x/4+........,直到最后一项的绝对值小于

10-5时为止(按四舍五入保留到6位小数)。

原程序:

#include<iostream.h>

#include<stdlib.h>

#include<math.h>

voidmain()

(

doublex,temp,s;

inti=2;

cout«"inputx=";

cin»x;

if(fabs(x)>l){cout«"xisgreatl,exit!"«endl;exit(l);}

while()

temp=temp*x;

s=s+temp/i;

i++;

)

cout«s«endl;

)

答案:0.693139

6024题:

求满足以下条件的最大的n:l*l+2*2+3*3+4*4+n*n<10000o

原程序:

#include<iostream.h>

intfunc(int,int);

voidmain()

(

cout«"n="«func(0,0);

cout«endl;

intfunc(intn,ints)

intnl,sl;

if(sl<=10000){

nl=n+l;

elsereturnn-1;

)

答案:30

6025题:

编程求算式:n+n*n+n*n*n+n*n*n*n+.…的前10项之和。其中n=4。

原程序:

#include<iostream.h>

classnpowersum

(

private:

ints,n;

public:

npowersum(intm=2){;s=0;}

intfunc();

voidshow(){cout«"sum="«func()«endl;

)

);

intnpowersum::func()

(

for(inti=0;i<=10;i++)

returns;

)

voidmain()

(

npowersumob(4);

ob.show();

)

答案:5592404

6026题:

当x=0.5时,计算

arctg(x)=x-x*x*x/3+x*x*x*x*x/5-x*x*x*x*x*x*x/7+.......的值。当计算

到最后一项的绝对值小于10E-5时为止(精确到小数点后6位)。

原程序:

#include<iostream.h>

voidmain()

(

doublex,item,sum;

inti=3,k=l;

cout«"pleaseinputx:";

cin»x;

sum=x;item=x;

do

(

k=-k;

sum=sum+item;

i=i+2;

}while();

cout«sum«endl;

答案:0.458333

6027题:

编写一程序,求数列1,-3!,5!,-7!,…,前5项的和。

原程序:

#include<iostream.h>

classsum

(

private:

intsign,n;

floatsuml;

public:

sum(){sign=1;suml=0.0;

cout«"pleaseinputvalueofn:";cin»n;}

floatadd();

voidshow(){cout«"sum="«add()«endl;}

);

floatsum::add()

(

inti,j;

floatfac;

for(i=l;i<=2*n-l;i=i+2)

fac=1.0;

for(j=l;j<=i;j++)

sum1=sum1+sign*fac;

returnsuml;

)

voidmain()

(

sumob;

ob.showQ;

)

答案:357955

6028题:

求n=100个三角堆的总核数。即s=1=(1+2)+(1+2+3)+(1+2+3+4)+

+(1+2+3+........+n)o

原程序:

#include<iostream.h>

classtrisum

(

private:

intn,sum;

public:

trisum(intm){n=m;;}

voidsummary(){

inti,j;

for(i=l;i<=n;i++)

sum=sum+j;

cout«sum«endl;

)

);

voidmain()

(

trisumob(100);

ob.summaryO;

答案:171700

6029题:

求Sn=l-l/2+l/3-l/4+……前30项之和(按四舍五入保留四位小数)。

原程序:

#include<iostream.h>

#include<math.h>

classsummary

(

private:

intn;

public:

doublesum(){

doublesum=0.0;

intk=-l,kk=-l;

for(n=1;n<=30;n++)

returnsum;

}

);

voidmain()

summaryob;

cout«ob.sum()«endl;

)

答案:0.6768

6030题:

编写一个程序,计算从1到100的所有整数n的立方和,当和大于

10000000时结束,输出整数n的值。

原程序:

#include<iostream.h>

classcubesum

(

private:

longsum;

public:

cubesum(){}

voidsumaryO

inti;

for(i=l;i<=100;i++)

(

sum=sum+i*i*i;

if(sum>l0000000)__________________

)

cout«i«endl;

)

);

voidmain()

(

cubesumob;

ob.sumaryO;

)

答案:80

6031题:

数列:0,1,3,8,21,……,问第70个数被6除余儿?

原程序:

#include<iostream.h>

voidmain()

(

inta[70]={0,l,3,8,21);

inti,x;

fbr(i=2;i<69;i++)

cout««endl;

)

答案:4

6032题:

求下列分数序列1/2,3/2,5/3,8/5,13/8,21/13,……的和,当和大于

21.8时结束,输出该序列的项数。

原程序:

#include<iostream.h>

voidmain()

(

inti=1,m=3,n=2,k,count=1;

doubles=0.5;

do

s=s+(double)m/n;

k=n;

count++;

}while(s<21.8);

cout«count«endl;

)

答案:15

6033题:

求数列a0,al,a2,...........中a20的值。已

知:a0=0,al=l,a2=l,a3=al+2*al+a2,a4=al+2*a2+a3,

a4=a2+2*a3+a4,…。

原程序:

#include<iostream.h>

voidmain()

(

inti,a[101]={0,l,l,4};

for()

cout«a[20]«endl;

答案:1513066

6034题:

计算1+1/1!+1/2!+1/3!+1/4!+.......的值。计算到最后一项小于10E-6

时为止((按四舍五入保留6位小数)。

原程序:

#include<iostream>

usingnamespacestd;

voidmain()

(

inti=l,n=l;

doublesum=1.0;

do

i++;

}while(1.0/n>le-6);

cout«sum«endl;

)

答案:2.71828

6035题:

已知第一个数为10,其余数一个比一个大2n-l,求前8个数的之和。

原程序:

#include<iostream.h>

classaddage

(

private:

intn;

public:

addage(intm){n=m;}

intage(intn);

voidshow_sum_age(){

inti,sum=0;

for(i=l;i<=8;i++)sum=sum+age(i);

cout«"ThesumofAgeis:"«sum«endl;}

);

intaddage::age(intn)

(

intc;

if()

c=10;

else

returnc;

)

voidmain()

(

addageob(8);

ob.show_sum_age();

)

答案:276

6036题:

数列1,1,2,3,5,8,13,21,……是著名的菲波那奇数列,求前30项的和与

前20项和的差。

原程序:

#include<iostream.h>

classseveral

(

private:

longa,b,suml0,sum20;

intn;

public:

longseveralsolution(intm);

longsum(intm);

voidshow_suml0_sum20()

(

cout«"sum30-sum20="«sum(30)-sum(20)«endl;

)

);

longseveral::severalsolution(intm)

(

longitem;

inti;

for(i=l;i<=m;i++)

if(i==llli==2){a=l;b=l;item=l;}

else

a=b;b=item;}

)

returnitem;

)

longseveral::sum(intm)

(

inti,temp=0;

for(i=l;i<=m;i++)

returntemp;

)

voidmain()

(

severalob;

ob.show_sum10_sum20();

答案:2160598

6037题:

数列1,1,2,3,5,8,13,21,……是著名的菲波那奇数列,求项值刚好大于

20000的项数n是多少。

原程序:

#include<iostream.h>

classseveral

(

private:

longa,b;

intn;

public:

longseveralsolution(intm);

voidshow_itemn(){

n=l;

while(severalsolution(n)<=20000)

cout«"item_n="«n«endl;

)

);

longseveral::severalsolution(intm)

longitem;

inti;

for(i=l;i<=m;i++)

(

if(){a=l;b=1;item=1;}

else

{item=a+b;a=b;b=item;}

)

returnitem;

)

voidmain()

(

severalob;

ob.show_itemn();

)

答案:23

6038题:

数列1,1,2,3,5,8,13,21,……是著名的菲波那奇数列,求和到多少项时

和大于20000o

原程序:

#include<iostream.h>

classseveral

(

private:

longa,b;

intn;

public:

longseveralsolution(intm);

longsum(intm);

voidshow_sumn(){

n=l;

while()n++;

cout«"sum_n="«n«endl;

)

);

longseveral::severalsolution(intm)

(

longitem;

inti;

for(i=l;i<=m;i++)

if(i==llli==2){a=l;b=l;item=l;}

else

{item=a+b;a=b;b=item;}

)

returnitem;

)

longseveral::sum(intm)

(

inti,;

for(i=l;i<=m;i++)

temp=temp+severalsolution(i);

returntemp;

)

voidmain()

(

severalob;

ob.show_sumn();

答案:21

6039题:

数列1,123,5,8,13,21,……是著名的菲波那奇数列,求前30项的和。

原程序:

#include<iostream.h>

classseveral

(

private:

longa,b,suml0,sum20;

intn;

public:

longseveralsolution(intm);

longsum(intm);

voidshow_sum30(){cout«"sum30="««endl;}

);

longseveral::severalsolution(intm)

(

longitem;

inti;

for(i=l;i<=m;i++)

if(i==llli==2){a=l;b=l;item=l;}

else

{item=a+b;a=b;b=item;}

)

returnitem;

)

longseveral::sum(intm)

(

inti,temp=0;

for(i=l;i<=m;i++)

returntemp;

)

voidmain()

(

severalob;

ob.show_sum30();

答案:2178308

6040题:

有一分数序21,3/2,5/3,8/5,13/8,21/13,……,试编制程序求出这个数列

的前n项之和(精确到小数点后4位)。

原程序:

#include<iostream.h>

classsequence

(

private:

intnumber;

floata,b,s;

public:

sequence(intn){number=n;a=2;b=1;s=0;}

floatsum();

);

floatsequence::sum()

(

inti;

floatt;

for(i=l;i<=number;i++)

;t=a;;b=t;

)

returns;

)

voidmain()

(

intn;

cout«"Pleaseinputitemnumber:";

cin»n;

sequenceseq(n);

cout«"sum="«seq.sum()«endl;

)

答案:32.6603

6041题:

已知第一个数为为10,其余每个数一个比一个大2*n-l,求第30个

数的值。

原程序:

#include<iostream.h>

classaddage

private:

intn;

public:

addage(intm){n=m;}

intage(intn);

voidshow_age(){cout«"Age="«age(n)«endl;}

);

intaddage::age(intn)

(

intc;

if(n==l)

else

returnc;

)

voidmain()

(

addageob(30);

ob.show_age();

答案:73

6042题:

求满足下列不等式的n的值:1+1/2+1/3+1/4+……+l/n>3.8o

原程序:

#include<iostream.h>

classadditem

(

private:

doublesum,value;

intn;

public:

additem(doublem){sum=0.0;value=m;n=0;}

intitem();

voidshow(){cout«"itemnumber="«item()«endl;}

);

intadditem::item()

do

++n;

}while();

returnn;

)

voidmain()

(

additemob(3.8);

ob.showQ;

)

答案:25

6043题:

编写程序,求一正整数等差数列的前50项的和,该数列前四项之和

是26,四项之积是880。

原程序:

#include<iostream.h>

classaddsum

private:

intsuml,n;

public:

addsum(intm){suml=O;n=m;}

intsum();

voidshow(){cout«"sum="«sum()«endl;}

);

intaddsum::sum()

{inta,b,c,d,i;

for(a=l;a<=26;a++)

for(d=l;d<=26;d++)

{b=a+(a+d)+(a+2*d)+(a+3*d);

if(b!=26)continue;

else

{c=a*(a+d)*(a+2*d)*(a+3*d);

if()continue;

else

for(i=0;i<50;i++)

)

returnsuml;

voidmain()

addsumob(50);

ob.show();

)

答案:3775

6044题:

数列1,1,2,3,5,8,13,21,……是著名的菲波那奇数列,求第28项的值。

原程序:

#include<iostream.h>

classseveral

(

private:

longa,b;

intn;

public:

longseveralsolution(intm);

voidshow_item(){

cout«"item28="««endl;}

);

longseveral::severalsolution(intm)

(

longitem;

inti;

for(i=l;i<=m;i++)

(

if(i==llli==2){a=l;b=l;item=l;}

else

{;a=b;b=item;}

)

returnitem;

)

voidmain()

(

severalob;

ob.show_item();

答案:317811

6045题:

写一个函数,求不大于10000的整数各位数字之和为9的数据个数。

原程序:

#include<iostream.h>

classsum9

(

public:

intsum_9();

voidshowsum(){cout«sum_9()«endl;}

);

intsum9::sum_9()

{intx[5],n,j,sum=0;

for(n=0;n<10000;n++)

(

inti;i=n;

for()

x[j]=i%10;

if(x[0]+x[l]+x[2]+x[3]+x[4]==9)

sum++;

)

returnsum;

)

voidmain()

(

sum9ob;

ob.showsum();

)

答案:220

6046题:

求方程3x-5y=l在条件IxIclOO且lyl<40下的所有整数解的Ixl+lyl的最

小值。

原程序:

#include<iostream.h>

#include<math.h>

voidmain()

intx,y,absxy;

for(x=-99;x<100;x++)

for(y=-39;y<40;y++)

if()absxy=abs(x)+abs(y);

cout«absxy«endl;

答案:3

6047题:

求解世界上的有名的“百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,

鸡邹三,值钱一。百钱买百鸡,问鸡翁、鸡母和鸡邹各儿何?写出当

鸡翁为8时,鸡母有几只?

原程序:

#include<iostream.h>

voidmain()

inti,j,k,sum,rsum;

for(i=0;i<=100;i++)

for(j=0;j<=100;j++)

for(k=0;k<=100;k++)

(

sum=i+j+k;

if()cout«i«","«j«","«k«endl;

)

)

答案:11

6048题:

求方程9x+4y=1000的所有正整数解的lx-yl的最大值。

原程序:

#include<iostream.h>

#include<math.h>

voidmain()

intx,y,absxy;

for(x=1;x<1000;x++)

for(y=1;y<1000;y++)

if()absxy=abs(x-y);

cout«absxy«endl;

)

答案:237

6049题:

有一个年份数,它与由它的数字倒排所成的数的和为8657,已知它

的最后两位数字相等且年份的最高位不为0,求该年份。

原程序:

#include<iostream.h>

voidmain()

(

inti,j,k;

for()

for(j=0;j<10;j++)

for(k=0;k<10;k++)

if()cout«i«j«k«k«endl;

)

答案:1966

6050题:

求积为50400的连续整数(它本身除外),即连续若干个整数之积为

50400,输出连续整数中最小的整数。

原程序:

#include<iostream.h>

#definen50400

voidmain()

(

for(longi=l;i<n;i++)

(

longj=i,m_sum=l;

if()

for(longk=i;k<=j-l;k++)

cout«k«"

cout«endl;

)

)

)

答案:224

6051题:

求方程3x-7y=l在条件IxIclOO且lyl<40下的所有整数解的Ixl+lyl的最

大值。

原程序:

#include<iostream.h>

#include<math.h>

voidmain()

(

intx,y,absxy;

for(x=-99;x<100;x++)

for(y=-39;y<40;y++)

if(()absxy=abs(x)+abs(y);

cout«absxy«endl;

)

答案:127

6052题:

求方程8372*xA2-33488*x=1850212在范围[-1000,+1000]之间的整数

解,请输出解的绝对值之差的绝对值。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(longal,longbl,longcl,longdl,longel){

a=a1;b=b1;c=c1;d=d1;e=e1;}

voidsolution(){

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[++solution_count]=x;

)

voidsolution_abs_sub()〃绝对值的差的绝对值

(

switch()

(

casel:cout«"solutionabssub

is:"«abs(xs[solution_count])«endl;break;

case2:cout«"solutionabssub

is:"«abs(abs(xs[lj)-abs(xs[2]))«endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution();

obj.solution_abs_sub();

答案:4

6053题:

求方程8372*x*x-33488*x=l850212在范围[-1000,+1000]之间的整数

解,请输出解的个数。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(Iongal,longbl,longc1,longdl,longel){

a=a1;b=b1;c=c1;d=d1;e=e1;}

voidsolution(){

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[]=x;

)

voidsolution_number()

cout«"solutionnumberis:"«solution_count«endl;

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution();

obj.solution_number();

)

答案:2

6054题:

求方程9x+4y=1000的所有正整数解的lx-yl的最小值。

原程序:

#include<iostream.h>

#include<math.h>

voidmain()

intx,y,absxy;

for(x=1;x<1000;x++)

for(y=1;y<1000;y++)

if()absxy=abs(x-y);

cout«absxy«endl;

)

答案:3

6055题:

求方程9x+4y=1000的所有正整数解的Ix-yl的个数。

原程序:

#include<iostream.h>

voidmain()

(

intx,y,count;

for()

for(y=1;y<1000;y++)

if(9*x+4*y==1000)count++;

cout«count«endl;

答案:27

6056题:

求方程8372*x*x-33488*x=1850212在范围[-1000,+1000]之间的整数

解,请输出解的绝对值之和。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(longal,longbl,longcl,longdl,longel){

a=a1;b=bl;c=c1;d=dl;e=e1;}

voidsolution(){

solution_count=0;

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)__________________

voidsolution_abs_add()

switch(solution_count)

(

case1:

cout«"solutionabsaddis:"«abs(xs[solution_count])«endl;break;

case2:

cout«"solutionabsaddis:"«(abs(xs[l])+abs(xs[2]))«endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution_abs_add();

答案:30

6057题:

两个整数100与10000之间有多少整数其数字之和等于5?

原程序:

#include<iostream.h>

#include<iomanip.h>

classnumber5

(

private:

intkl,k2,k3,k4,n;

public:

number5(){n=0;}

voidsolution();

voidshow(){

solution();

cout«"n="«n«endl;

)

);

voidnumber5::solution()

inti;

for(i=100;i<10000;i++)

k3=i/100%10;

k4=i/1000%10;

if(kl+k2+k3+k4==5)n++;

)

)

voidmain()

(

number5ob;

ob.showQ;

)

答案:50

6058题:

求方程8372*x*x-33488*x=1850212在范围[-1000,+1000]之间的整数

解,请输出解的最小值。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(longal,longbl,longcl,longdl,longel){

a=a1;b=bl;c=c1;d=dl;e=e1;}

voidsolution(){

solution_count=0;

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[++solution_count]=x;

)

voidsolution_min()

(

switch()

(

case1:

cout«"solutionminis:"«xs[solution_count]«endl;break;

case2:

cout«"solutionminis:"««endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution();

obj.solution_min();

)

答案:-13

6059题:

求出[1000,100000]内所有能同时被17和19整除的整数最大值与最小

值差的绝对值。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=a1;b=bl;c=c1;d=d1;}

voidsolution(){

max=0;min=b;

for(i=a;i<=b;i++)

if((i%c==O)&&(i%d==O)){

if(i<min)_________

if(i>max)_________

)

)

voidsub_abs()

(

cout«"Thesubabsolutionis:"«abs(max-min)«endl;

)

);

voidmain()

(

additionobj(1000,10000,17,19);

obj.solution();

obj.sub_abs();

)

答案:8398

6060题:

求方程8372*x*x-33488*x=l850212在范围[-1000,+1000]之间的整数

解,请输出解的差的绝对值。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution一count;

public:

equation(longal,longbl,longcl,longdl,longel){

a=al;b=bl;c=cl;d=dl;e=el;}

voidsolution(){

solution_count=0;

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[]=x;

)

voidsolution_sub_abs()

(

switch(solution_count)

(

case1:

cout«"solutionsubabsis:"«abs(xs[solution_count])«endl;break;

case2:

cout«"solutionsubabsis:"««endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution();

obj.solution_sub_abs();

答案:30

6061题:

求方程8372*x*x-33488*x=1850212在范围[-1000,+1000]之间的整数

解,请输出解的和的绝对值。

原程序:

#include<iostream.h>

#include<math.h>

classequation

(

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(longal,longbl,longcl,longdl,longel){

a=a1;b=b1;c=c1;d=d1;e=e1;}

voidsolution(){

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[++solution_count]=x;

voidsolution_add_abs()

switch(solution_count)

case1:

cout«"solutionaddabsis:"«abs(xs[solution_count])«endl;break;

case2:

cout«"solutionaddabsis:"«abs(xs[1]+xs[2])«endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

(

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution_add_abs();

)

答案:4

6062题:

求出[1000,100000]内所有能同时被17和19整除的整数中的最大值。

原程序:

#include<iostream.h>

#include<math.h>

classaddition

(

longi,a,b,c,d,sum,count,abs_sub,max,min;

public:

addition(longal,longbl,longcl,longdl){

a=al;b=bl;c=cl;d=dl;}

voidsolution(){

max=0;

for(i=a;i<=b;i++)

if((i%c==O)&&(i%d==O)){

if(i<min)min=i;

if(i>max)max=i;

)

)

voidadd_max()

cout«"Themaxis:"«max«endl;

);

voidmain()

(

additionobj(1000,10000,17,19);

obj.add_max();

)

答案:9690

6063题:

求方程8372*x*x-33488*x=1850212在范围[-1000,+1000]之间的整数

解,请输出解的最大值。

原程序:

#include<iostream.h>

#include<math.h>

classequation

longa,b,c,d,e,x,xs[3],solution_count;

public:

equation(longalJongbl,longcl,longdl,longel){

a=al;b=bl;c=cl;d=dl;e=el;}

voidsolution(){

for(x=d;x<=e;x++)

if(a*x*x+b*x==c)xs[++solution_count]=x;

)

voidsolution_max()

(

switch(solution_count)

(

casel:cout«"solutionmaxis:"«xs[solution_count];break;

case2:cout«"solutionmax

is:"«((xs[l]>=xs[2])?xs[l]:xs[2])«endl;break;

default:cout«"Notsolution!"«endl;break;

)

)

);

voidmain()

equationobj(8372,-33488,1850212,-1000,+1000);

obj.solution_max();

答案:17

6064题:

ONE*ONE=TWO算式中,不同的字母代表十进制中不同的一个数字,

请问满足该算式的解有多少?

原程序:

#include<iostream.h>

voidmain()

(

inti,j,k,h,n,x,count;

for(i=0;i<10;i++)

for(j=0;j<10;j++)

for(k=0;k<10;k++)

(

x=i*100+j*10+k;

for(h=0;h<10;h++)

for(n=0;n<10;n++)

if()count++;

)

cout«count«endl;

)

答案:4

6065题:

某数的17倍加上另一个数的19倍等于35587,两数均在10000以内,

且不为0,求满足上述条件的解有多少个(不计重复的)?若将每对

数相加,请求出这些和中最大数与最小差的绝对值。

原程序:

#include<iostream.h>

#include<math.h>

classmultiply

(

private:

intn,count,max,min;

public:

voidnumber()

inti,j;

max=O;___________

for(i=l;i<10000;i++)

for()

if(i*17+j*19==35587)

(

if(max<i+j)max=i+j;

if(min>i+j)min=i+j;

)

cout«"abs(max-min)="«abs(max-min)«endl;

)

);

voidmain()

(

multiplyob;

ob.number();

)

答案:102

6066题:

求出[500,2000]内所有既不能被5

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论